All warnings fixed/silenced.

This commit is contained in:
Scott Duensing 2026-03-27 19:21:11 -05:00
parent 0043e06c82
commit 51ade9f119
29 changed files with 79 additions and 32 deletions

4
.gitignore vendored
View file

@ -7,7 +7,3 @@ lib/
.gitattributes~ .gitattributes~
*.SWP *.SWP
.claude/ .claude/
dvxbasic/test_compiler
dvxbasic/test_lex
dvxbasic/test_quick
dvxbasic/test_vm

View file

@ -4,7 +4,7 @@ DJGPP_PREFIX = $(HOME)/djgpp/djgpp
DJGPP_LIBPATH = $(HOME)/claude/windriver/tools/lib DJGPP_LIBPATH = $(HOME)/claude/windriver/tools/lib
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I../core -I../core/platform -I../core/thirdparty -I../widgets -I../tasks -I../core/thirdparty -I../shell CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I../core -I../core/platform -I../core/thirdparty -I../widgets -I../tasks -I../core/thirdparty -I../shell
OBJDIR = ../obj/apps OBJDIR = ../obj/apps
BINDIR = ../bin/apps BINDIR = ../bin/apps

View file

@ -25,7 +25,7 @@
#include "dvxWm.h" #include "dvxWm.h"
#include "dvxPlatform.h" #include "dvxPlatform.h"
#include "shellApp.h" #include "shellApp.h"
#include "stb_ds.h" #include "stb_ds_wrap.h"
#include <dirent.h> #include <dirent.h>
#include <stdio.h> #include <stdio.h>

View file

@ -9,7 +9,7 @@
#include "dvxWidget.h" #include "dvxWidget.h"
#include "dvxWm.h" #include "dvxWm.h"
#include "shellApp.h" #include "shellApp.h"
#include "stb_image.h" #include "stb_image_wrap.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>

View file

@ -7,7 +7,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I. -Iplatform -I../tasks -Ithirdparty CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I. -Iplatform -I../tasks -Ithirdparty
OBJDIR = ../obj/core OBJDIR = ../obj/core
LIBSDIR = ../bin/libs LIBSDIR = ../bin/libs

View file

@ -38,14 +38,14 @@
#include "dvxCursor.h" #include "dvxCursor.h"
#include "dvxPlatform.h" #include "dvxPlatform.h"
#include "thirdparty/stb_ds.h" #include "thirdparty/stb_ds_wrap.h"
#include <string.h> #include <string.h>
#include <ctype.h> #include <ctype.h>
#include <time.h> #include <time.h>
#include "thirdparty/stb_image.h" #include "thirdparty/stb_image_wrap.h"
#include "thirdparty/stb_image_write.h" #include "thirdparty/stb_image_write_wrap.h"
// Double-click timing uses CLOCKS_PER_SEC so it's portable between DJGPP // Double-click timing uses CLOCKS_PER_SEC so it's portable between DJGPP
// (where CLOCKS_PER_SEC is typically 91, from the PIT) and Linux/SDL. // (where CLOCKS_PER_SEC is typically 91, from the PIT) and Linux/SDL.

View file

@ -27,7 +27,7 @@
#define STBI_ONLY_GIF #define STBI_ONLY_GIF
#define STBI_NO_SIMD #define STBI_NO_SIMD
#define STB_IMAGE_IMPLEMENTATION #define STB_IMAGE_IMPLEMENTATION
#include "thirdparty/stb_image.h" #include "thirdparty/stb_image_wrap.h"
#pragma GCC diagnostic pop #pragma GCC diagnostic pop

View file

@ -15,7 +15,7 @@
#define STBI_WRITE_NO_SIMD #define STBI_WRITE_NO_SIMD
#define STB_IMAGE_WRITE_IMPLEMENTATION #define STB_IMAGE_WRITE_IMPLEMENTATION
#include "thirdparty/stb_image_write.h" #include "thirdparty/stb_image_write_wrap.h"
#pragma GCC diagnostic pop #pragma GCC diagnostic pop

View file

@ -13,7 +13,7 @@
#include "dvxMem.h" #include "dvxMem.h"
// stb_ds dynamic arrays (implementation lives in libtasks.a) // stb_ds dynamic arrays (implementation lives in libtasks.a)
#include "thirdparty/stb_ds.h" #include "thirdparty/stb_ds_wrap.h"
// ============================================================ // ============================================================

View file

@ -34,7 +34,7 @@
#include "dvxDraw.h" #include "dvxDraw.h"
#include "dvxComp.h" #include "dvxComp.h"
#include "dvxWidget.h" #include "dvxWidget.h"
#include "thirdparty/stb_image.h" #include "thirdparty/stb_image_wrap.h"
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>

17
core/thirdparty/stb_ds_wrap.h vendored Normal file
View file

@ -0,0 +1,17 @@
// stb_ds_wrap.h -- Wrapper for stb_ds.h that suppresses third-party warnings
#ifndef STB_DS_WRAP_H
#define STB_DS_WRAP_H
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wtype-limits"
#pragma GCC diagnostic ignored "-Wsign-compare"
#endif
#include "stb_ds.h"
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic pop
#endif
#endif // STB_DS_WRAP_H

17
core/thirdparty/stb_image_wrap.h vendored Normal file
View file

@ -0,0 +1,17 @@
// stb_image_wrap.h -- Wrapper for stb_image.h that suppresses third-party warnings
#ifndef STB_IMAGE_WRAP_H
#define STB_IMAGE_WRAP_H
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wsign-compare"
#pragma GCC diagnostic ignored "-Wtype-limits"
#endif
#include "stb_image.h"
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic pop
#endif
#endif // STB_IMAGE_WRAP_H

17
core/thirdparty/stb_image_write_wrap.h vendored Normal file
View file

@ -0,0 +1,17 @@
// stb_image_write_wrap.h -- Wrapper for stb_image_write.h that suppresses third-party warnings
#ifndef STB_IMAGE_WRITE_WRAP_H
#define STB_IMAGE_WRITE_WRAP_H
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wsign-compare"
#pragma GCC diagnostic ignored "-Wtype-limits"
#endif
#include "stb_image_write.h"
#if defined(__GNUC__) || defined(__clang__)
#pragma GCC diagnostic pop
#endif
#endif // STB_IMAGE_WRITE_WRAP_H

View file

@ -12,7 +12,7 @@
// the API pointer, then casts and calls through it. // the API pointer, then casts and calls through it.
#include "dvxWidgetPlugin.h" #include "dvxWidgetPlugin.h"
#include "stb_ds.h" #include "stb_ds_wrap.h"
#include <string.h> #include <string.h>
#include <strings.h> #include <strings.h>

View file

@ -19,7 +19,7 @@
// which doesn't map cleanly to an arena pattern. // which doesn't map cleanly to an arena pattern.
#include "dvxWidgetPlugin.h" #include "dvxWidgetPlugin.h"
#include "stb_ds.h" #include "stb_ds_wrap.h"
#include <time.h> #include <time.h>

View file

@ -12,7 +12,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I../core -I../core/platform -I../widgets -I../shell -I../tasks -I../core/thirdparty -I. CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I../core -I../core/platform -I../widgets -I../shell -I../tasks -I../core/thirdparty -I.
OBJDIR = ../obj/dvxbasic OBJDIR = ../obj/dvxbasic
LIBSDIR = ../bin/libs LIBSDIR = ../bin/libs
@ -36,7 +36,7 @@ APP_TARGET = $(APPDIR)/dvxbasic.app
# Native test programs (host gcc, not cross-compiled) # Native test programs (host gcc, not cross-compiled)
HOSTCC = gcc HOSTCC = gcc
HOSTCFLAGS = -O2 -Wall -Wextra -I. HOSTCFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -I.
BINDIR = ../bin BINDIR = ../bin
TEST_COMPILER = $(BINDIR)/test_compiler TEST_COMPILER = $(BINDIR)/test_compiler

View file

@ -6,7 +6,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I. -I../core -I../core/platform -I../tasks -I../core/thirdparty CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I. -I../core -I../core/platform -I../tasks -I../core/thirdparty
OBJDIR = ../obj/listhelp OBJDIR = ../obj/listhelp
LIBSDIR = ../bin/libs LIBSDIR = ../bin/libs

View file

@ -9,7 +9,7 @@ DJGPP_LIBPATH = $(HOME)/claude/windriver/tools/lib
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
EXE2COFF = $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/exe2coff EXE2COFF = $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/exe2coff
CWSDSTUB = $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/CWSDSTUB.EXE CWSDSTUB = $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/CWSDSTUB.EXE
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I../core -I../core/platform -I../tasks -I../core/thirdparty CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I../core -I../core/platform -I../tasks -I../core/thirdparty
LDFLAGS = -lm LDFLAGS = -lm
OBJDIR = ../obj/loader OBJDIR = ../obj/loader

View file

@ -29,7 +29,7 @@ extern void dvxFree(void *ptr);
#define STBDS_REALLOC(c, p, s) dvxRealloc((p), (s)) #define STBDS_REALLOC(c, p, s) dvxRealloc((p), (s))
#define STBDS_FREE(c, p) dvxFree(p) #define STBDS_FREE(c, p) dvxFree(p)
#define STB_DS_IMPLEMENTATION #define STB_DS_IMPLEMENTATION
#include "stb_ds.h" #include "stb_ds_wrap.h"
// ============================================================ // ============================================================
// Constants // Constants

View file

@ -5,7 +5,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I../core -I../core/platform -I../widgets -I../tasks -I../core/thirdparty CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I../core -I../core/platform -I../widgets -I../tasks -I../core/thirdparty
OBJDIR = ../obj/shell OBJDIR = ../obj/shell
LIBSDIR = ../bin/libs LIBSDIR = ../bin/libs

View file

@ -6,7 +6,7 @@
#include "shellApp.h" #include "shellApp.h"
#include "dvxDialog.h" #include "dvxDialog.h"
#include "dvxPlatform.h" #include "dvxPlatform.h"
#include "stb_ds.h" #include "stb_ds_wrap.h"
#include <dlfcn.h> #include <dlfcn.h>
#include <errno.h> #include <errno.h>

View file

@ -34,7 +34,7 @@
#include "dvxComp.h" #include "dvxComp.h"
#include "dvxPrefs.h" #include "dvxPrefs.h"
#include "dvxPlatform.h" #include "dvxPlatform.h"
#include "stb_ds.h" #include "stb_ds_wrap.h"
#include <stdarg.h> #include <stdarg.h>
#include <setjmp.h> #include <setjmp.h>

View file

@ -5,7 +5,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I../core -I../core/platform -I../widgets -I../shell -I../tasks -I../core/thirdparty CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I../core -I../core/platform -I../widgets -I../shell -I../tasks -I../core/thirdparty
OBJDIR = ../obj/taskmgr OBJDIR = ../obj/taskmgr
LIBSDIR = ../bin/libs LIBSDIR = ../bin/libs

View file

@ -14,7 +14,7 @@
#include "widgetListView.h" #include "widgetListView.h"
#include "dvxWm.h" #include "dvxWm.h"
#include "dvxPlatform.h" #include "dvxPlatform.h"
#include "stb_ds.h" #include "stb_ds_wrap.h"
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>

View file

@ -5,7 +5,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586
OBJDIR = ../obj/tasks OBJDIR = ../obj/tasks
LIBSDIR = ../bin/libs LIBSDIR = ../bin/libs

View file

@ -21,7 +21,7 @@
// scheduler's linear scan. The downside (holes after termination) is // scheduler's linear scan. The downside (holes after termination) is
// mitigated by slot recycling in findFreeSlot(). // mitigated by slot recycling in findFreeSlot().
#include "../core/thirdparty/stb_ds.h" #include "../core/thirdparty/stb_ds_wrap.h"
#include "taskswitch.h" #include "taskswitch.h"
#include <stdlib.h> #include <stdlib.h>

View file

@ -6,7 +6,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I. -I../core -I../core/platform -I../tasks -I../core/thirdparty CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I. -I../core -I../core/platform -I../tasks -I../core/thirdparty
OBJDIR = ../obj/texthelp OBJDIR = ../obj/texthelp
LIBSDIR = ../bin/libs LIBSDIR = ../bin/libs

View file

@ -6,7 +6,7 @@
DJGPP_PREFIX = $(HOME)/djgpp/djgpp DJGPP_PREFIX = $(HOME)/djgpp/djgpp
CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc CC = $(DJGPP_PREFIX)/bin/i586-pc-msdosdjgpp-gcc
DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen DXE3GEN = PATH=$(DJGPP_PREFIX)/bin:$(PATH) DJDIR=$(DJGPP_PREFIX)/i586-pc-msdosdjgpp $(DJGPP_PREFIX)/i586-pc-msdosdjgpp/bin/dxe3gen
CFLAGS = -O2 -Wall -Wextra -march=i486 -mtune=i586 -I../core -I../core/platform -I../tasks -I../core/thirdparty CFLAGS = -O2 -Wall -Wextra -Wno-type-limits -Wno-sign-compare -march=i486 -mtune=i586 -I../core -I../core/platform -I../tasks -I../core/thirdparty
OBJDIR = ../obj/widgets OBJDIR = ../obj/widgets
WGTDIR = ../bin/widgets WGTDIR = ../bin/widgets

View file

@ -15,7 +15,7 @@ static int32_t sTypeId = -1;
#include <time.h> #include <time.h>
#include "stb_ds.h" #include "stb_ds_wrap.h"
typedef struct { typedef struct {
int32_t intervalMs; int32_t intervalMs;