Skip to content

Commit 548216c

Browse files
committed
clear warnings at compile time
1 parent a2cbd4e commit 548216c

File tree

5 files changed

+36
-20
lines changed

5 files changed

+36
-20
lines changed

src/GG_HW_def.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ typedef unsigned long long uint64_t;
4545
#include "stdint.h"
4646
#endif
4747

48+
#ifndef NULL
4849
#define NULL (0)
50+
#endif
4951

5052
#endif // __GG_HW_DEF_H__

src/gg_console.c

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
2022.01.25 M.Kogan 初版開発開始
55
*/
66

7-
#include "ggbase.h"
7+
#include "GG.h"
88

99
GGT_CON GG_CON; // GG_CONワークの実体
1010

@@ -276,7 +276,7 @@ GGT_CMD* gg_con_CmdSearchX(char *name) // コマンド名のサーチ(nameは途
276276
//
277277
//--------------------------------------------------------------------------
278278

279-
static C_help(int argc, char **argv)
279+
static int C_help(int argc, char **argv)
280280
{
281281
int i;
282282
if (argc>1) {
@@ -289,12 +289,14 @@ static C_help(int argc, char **argv)
289289
return 0;
290290
}
291291

292+
#if 0
292293
static int C_quit(int argc, char**argv) // 終了(EXITコード発行)
293294
{
294295
if (argc==1) return GG_CON_EXIT; // EXITコード(-999)
295296
gg_con_CmdHelp(argv[0]);
296297
return 0;
297298
}
299+
#endif
298300

299301
//
300302
// メモリダンプ系
@@ -324,7 +326,7 @@ static int mdchar(void *buf, long len)
324326
static int C_mdb(int argc, char**argv) // メモリダンプ(byte)
325327
{
326328
uint8_t buf[16];
327-
long i, j;
329+
unsigned long i, j;
328330
GG_CON.PreDetection = 0;
329331
if (argc>1) maddr = gg_asc2int(argv[1]);
330332
if (argc>2) malen = gg_asc2int(argv[2]);
@@ -333,7 +335,7 @@ static int C_mdb(int argc, char**argv) // メモリダンプ(byte)
333335
for (j=0; j<16; j++) {
334336
if (j>=(malen-i)) break;
335337
if (j==8) gg_PutC(' ');
336-
gg_printf(" %02X", buf[j]=*(uint8_t *)(maddr+i+j));
338+
gg_printf(" %02X", buf[j]=*(uint8_t *)((uintptr_t)(maddr+i+j)));
337339
if (GG_CON.PreDetection) goto owari;
338340
}
339341
if (mdchar(buf, malen-i)) goto owari;
@@ -345,7 +347,7 @@ static int C_mdb(int argc, char**argv) // メモリダンプ(byte)
345347
static int C_mdw(int argc, char**argv) // メモリダンプ(word)
346348
{
347349
uint16_t buf[8];
348-
long i, j;
350+
unsigned long i, j;
349351
if (argc>1) maddr = gg_asc2int(argv[1]);
350352
if (argc>2) malen = gg_asc2int(argv[2]);
351353
GG_CON.PreDetection = 0;
@@ -354,7 +356,7 @@ static int C_mdw(int argc, char**argv) // メモリダンプ(word)
354356
for (j=0; j<16; j+=2) {
355357
if (j>=(malen-i)) break;
356358
if (j==8) gg_PutC(' ');
357-
gg_printf(" %04X", buf[j/2]=*(uint16_t *)(maddr+i+j));
359+
gg_printf(" %04X", buf[j/2]=*(uint16_t *)((uintptr_t)(maddr+i+j)));
358360
if (GG_CON.PreDetection) goto owari;
359361
}
360362
if (mdchar(buf, malen-i)) goto owari;
@@ -366,7 +368,7 @@ static int C_mdw(int argc, char**argv) // メモリダンプ(word)
366368
static int C_mdd(int argc, char**argv) // メモリダンプ(dword)
367369
{
368370
uint32_t buf[8];
369-
long i, j;
371+
unsigned long i, j;
370372
if (argc>1) maddr = gg_asc2int(argv[1]);
371373
if (argc>2) malen = gg_asc2int(argv[2]);
372374
GG_CON.PreDetection = 0;
@@ -375,7 +377,7 @@ static int C_mdd(int argc, char**argv) // メモリダンプ(dword)
375377
for (j=0; j<16; j+=4) {
376378
if (j>=(malen-i)) break;
377379
if (j==8) gg_PutC(' ');
378-
gg_printf(" %08lX", buf[j/4]=*(uint32_t *)(maddr+i+j));
380+
gg_printf(" %08lX", buf[j/4]=*(uint32_t *)((uintptr_t)(maddr+i+j)));
379381
if (GG_CON.PreDetection) goto owari;
380382
}
381383
if (mdchar(buf, malen-i)) goto owari;
@@ -393,7 +395,7 @@ static int C_msb(int argc, char**argv) // メモリセット(byte)
393395
addr = gg_asc2int(argv[1]);
394396
while(argc>2) {
395397
data = gg_asc2int(argv[2]);
396-
*(uint8_t *)(addr) = (uint8_t)data;
398+
*(uint8_t *)((uintptr_t)addr) = (uint8_t)data;
397399
addr += 1;
398400
argc--;
399401
argv++;
@@ -411,7 +413,7 @@ static int C_msw(int argc, char**argv) // メモリセット(word)
411413
addr = gg_asc2int(argv[1]);
412414
while(argc>2) {
413415
data = gg_asc2int(argv[2]);
414-
*(uint16_t *)(addr) = (uint16_t)data;
416+
*(uint16_t *)((uintptr_t)addr) = (uint16_t)data;
415417
addr += 2;
416418
argc--;
417419
argv++;
@@ -429,7 +431,7 @@ static int C_msd(int argc, char**argv) // メモリセット(dword)
429431
addr = gg_asc2int(argv[1]);
430432
while(argc>2) {
431433
data = gg_asc2int(argv[2]);
432-
*(uint32_t *)(addr) = (uint32_t)data;
434+
*(uint32_t *)((uintptr_t)addr) = (uint32_t)data;
433435
addr += 4;
434436
argc--;
435437
argv++;
@@ -451,7 +453,7 @@ static int C_mfb(int argc, char**argv) // メモリフィル(byte)
451453
alen = gg_asc2int(argv[2]);
452454
data = gg_asc2int(argv[3]);
453455
for (i=0; i<alen; i+=1) {
454-
*(uint8_t *)(addr+i) = (uint8_t)data;
456+
*(uint8_t *)((uintptr_t)(addr+i)) = (uint8_t)data;
455457
}
456458
} else {
457459
gg_con_CmdHelp(argv[0]);
@@ -469,7 +471,7 @@ static int C_mfw(int argc, char**argv) // メモリフィル(word)
469471
alen = gg_asc2int(argv[2]);
470472
data = gg_asc2int(argv[3]);
471473
for (i=0; i<alen; i+=2) {
472-
*(uint16_t *)(addr+i) = (uint16_t)data;
474+
*(uint16_t *)((uintptr_t)(addr+i)) = (uint16_t)data;
473475
}
474476
} else {
475477
gg_con_CmdHelp(argv[0]);
@@ -487,7 +489,7 @@ static int C_mfd(int argc, char**argv) // メモリフィル(dword)
487489
alen = gg_asc2int(argv[2]);
488490
data = gg_asc2int(argv[3]);
489491
for (i=0; i<alen; i+=4) {
490-
*(uint32_t *)(addr+i) = (uint32_t)data;
492+
*(uint32_t *)((uintptr_t)(addr+i)) = (uint32_t)data;
491493
}
492494
} else {
493495
gg_con_CmdHelp(argv[0]);

src/gg_printf.c

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
2022.01.10 M.Kogan 初版開発開始
55
*/
66

7-
#include "ggbase.h"
7+
#include "GG.h"
88

99
//
1010
// 書式付変換(汎用)
@@ -299,7 +299,8 @@ static int VXprintf(T_XPW *xpw, const char *fmt, va_list vlst) // 文字列に
299299
if (xpw->flags&XPF_l) { // 'l'
300300
XCnvInt(xpw, va_arg(vlst, long)); // 十進変換(long)
301301
} else if (xpw->flags&XPF_h) { // 'h'
302-
XCnvInt(xpw, va_arg(vlst, short)); // 十進変換(short)
302+
// XCnvInt(xpw, va_arg(vlst, short)); // 十進変換(short)
303+
XCnvInt(xpw, va_arg(vlst, int)); // 十進変換(short-->int)
303304
} else { // 通常
304305
XCnvInt(xpw, va_arg(vlst, int)); // 十進変換(int)
305306
}
@@ -313,7 +314,8 @@ static int VXprintf(T_XPW *xpw, const char *fmt, va_list vlst) // 文字列に
313314
if (xpw->flags&XPF_l) { // 'l'
314315
XCnvXOB(xpw, va_arg(vlst, unsigned long), c); // uint/HEX/OCT/BIN変換(unsigned long)
315316
} else if (xpw->flags&XPF_h) { // 'h'
316-
XCnvXOB(xpw, va_arg(vlst, unsigned short), c); // uint/HEX/OCT/BIN変換(unsigned short)
317+
// XCnvXOB(xpw, va_arg(vlst, unsigned short), c); // uint/HEX/OCT/BIN変換(unsigned short)
318+
XCnvXOB(xpw, va_arg(vlst, unsigned int), c); // uint/HEX/OCT/BIN変換(unsigned short-->unsigned int)
317319
} else { // 通常
318320
XCnvXOB(xpw, va_arg(vlst, unsigned int), c); // uint/HEX/OCT/BIN変換(unsigned int)
319321
}
@@ -323,7 +325,8 @@ static int VXprintf(T_XPW *xpw, const char *fmt, va_list vlst) // 文字列に
323325
if (xpw->flags&XPF_l) { // 'l'
324326
XCnvF(xpw, va_arg(vlst, double)); // 浮動小数点変換(double)
325327
} else if (xpw->flags&XPF_h) { // 'h'
326-
XCnvF(xpw, va_arg(vlst, float)); // 浮動小数点変換(float)
328+
// XCnvF(xpw, va_arg(vlst, float)); // 浮動小数点変換(float)
329+
XCnvF(xpw, va_arg(vlst, double)); // 浮動小数点変換(float-->double)
327330
} else { // 通常
328331
XCnvF(xpw, va_arg(vlst, double)); // 浮動小数点変換(double)
329332
}
@@ -332,7 +335,8 @@ static int VXprintf(T_XPW *xpw, const char *fmt, va_list vlst) // 文字列に
332335
// case 'e': // E形式は非対応
333336
// break;
334337
case 'c': // 1文字変換
335-
XCnvC(xpw, va_arg(vlst, char)); // 1文字変換
338+
// XCnvC(xpw, va_arg(vlst, char)); // 1文字変換
339+
XCnvC(xpw, va_arg(vlst, int)); // 1文字変換(char-->int)
336340
XPrintDFS(xpw); // 整列表示
337341
break;
338342
case 's': // 文字列変換

src/gg_uty.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
2022.01.25 M.Kogan 初版開発開始
55
*/
66

7-
#include "ggbase.h"
7+
#include "GG.h"
88

99

1010

@@ -16,6 +16,7 @@
1616

1717
static int null_putc(int c) // 標準出力関数(デフォルト,何もしない)
1818
{
19+
(void)c;
1920
return 0;
2021
}
2122
static int null_getc(void) // 標準入力関数(デフォルト,何も返さない)

src/ggbase.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,31 @@
99
#ifndef __GGBASE_H__
1010
#define __GGBASE_H__
1111

12+
13+
#include <Arduino.h>
14+
15+
1216
#ifdef __cplusplus
1317
extern "C" {
1418
#endif
1519

20+
1621
//------------------
1722
// HW定義(HW環境依存部)
1823
//------------------
1924
// 割禁定義
2025
// 整数型宣言
2126
#include "GG_HW_def.h" // GGツール HW定義(HW環境依存部)
2227

28+
2329
//------------------
2430
// GGツール
2531
//------------------
2632
#include "gg_uty.h" // UTY
2733
#include "gg_printf.h" // PRINTF
2834
#include "gg_console.h" // CONSOLE
2935

36+
3037
#ifdef __cplusplus
3138
}
3239
#endif

0 commit comments

Comments
 (0)