ワーニング3点について( W0520513 / W0520167 / W0520144 )

こんにちは、サワと申します。

E2Liteエミュレータを用いた開発において、ビルドでワーニングが発生します。
解決策をご存知でしたら教えていただけないでしょうか。

 開発環境:CS+
 マイコン:RL78/G14(ROM:96KB) R5F104MF
 コンパイラ:CC-RL

3点あります。
~~~~~~~~~~~~~~~~~~~~~
●1点目
 W0520513:型 "UCHAR __near (*)[2]" の値は型 "pfdl_u08 __near *" の実体として代入できません。

●2点目
 W0520167:"CHAR *" 型の引数は型 "char __far *__near" の引数と整合しません。

●3点目
 W0520144:型 "volatile unsigned char __near *" の値は型 "UCHAR *" の実体の初期化には使用できません。
~~~~~~~~~~~~~~~~~~~~~


以下に該当コードを提示します。

●1点目
typedef struct EEE{
union{
UCHAR ucAddress[SIZE]; //UCHAR型呼出
USHORT usAddress[SIZE / 2]; //USHORT型呼出
ULONG ulAddress[SIZE / 4]; //ULONG型呼出
double dbAddress[SIZE / 8]; //double型呼出
}Area1;
union{
UCHAR ucAddress[SIZE]; //UCHAR型呼出
USHORT usAddress[SIZE / 2]; //USHORT型呼出
}Area2;
}ST_BLOCK;

const ST_BLOCK FFF = {
{
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
}, {
0x00,0x00,
},
};

ST_BLOCK BlockData = FFF;

typedef struct
{
pfdl_u16 index_u16;
__near pfdl_u08* data_pu08;
pfdl_u16 bytecount_u16;
pfdl_command_t command_enu;
} GGG;

static GGG HHH;
HHH.data_pu08 = &(BlockData.Area2.ucAddress); ←ここで発生

●2点目
 UCHAR AAA[MAX];
 sprintf((CHAR*)AAA,"%s\r","NG"); ←ここで発生

●3点目
#define PP (*(volatile __near unsigned char *)0xFF02)

typedef struct {
UCHAR* aaa;
UCHAR bbb;
UCHAR ccc;
UCHAR ddd;
} CCC;

CCC const DDD[] = {
&(PP),2,0,0, ←ここで発生
・・・
};