From d6249f4bdae8295aa07e1db32c94818c6325bd0b Mon Sep 17 00:00:00 2001 From: Joseph Poirier Date: Sun, 7 Jun 2015 19:37:21 -0500 Subject: [PATCH] don't explicitly set EnableDebugger=TRUE when calling PicocParse, state is now set via NO_DEBUGGER compile switch, add ignore items' --- .gitignore | 8 ++++++++ platform.c | 14 ++++++++++---- platform/platform_msvc.c | 8 +++++++- platform/platform_unix.c | 8 +++++++- 4 files changed, 32 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index a935f71..1d62335 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,11 @@ picoc build/* archives/ + +picoc.config +picoc.creator +picoc.creator.user +picoc.files +picoc.includes +tests/fred.txt + diff --git a/platform.c b/platform.c index 59ec96c..af234df 100644 --- a/platform.c +++ b/platform.c @@ -4,6 +4,12 @@ #include "picoc.h" #include "interpreter.h" +#ifdef NO_DEBUGGER +static int gEnableDebugger = FALSE; +#else +static int gEnableDebugger = TRUE; +#endif + /* initialise everything */ void PicocInitialise(Picoc *pc, int StackSize) @@ -76,16 +82,16 @@ void PicocCallMain(Picoc *pc, int argc, char **argv) if (FuncValue->Val->FuncDef.ReturnType == &pc->VoidType) { if (FuncValue->Val->FuncDef.NumParams == 0) - PicocParse(pc, "startup", CALL_MAIN_NO_ARGS_RETURN_VOID, strlen(CALL_MAIN_NO_ARGS_RETURN_VOID), TRUE, TRUE, FALSE, TRUE); + PicocParse(pc, "startup", CALL_MAIN_NO_ARGS_RETURN_VOID, strlen(CALL_MAIN_NO_ARGS_RETURN_VOID), TRUE, TRUE, FALSE, gEnableDebugger); else - PicocParse(pc, "startup", CALL_MAIN_WITH_ARGS_RETURN_VOID, strlen(CALL_MAIN_WITH_ARGS_RETURN_VOID), TRUE, TRUE, FALSE, TRUE); + PicocParse(pc, "startup", CALL_MAIN_WITH_ARGS_RETURN_VOID, strlen(CALL_MAIN_WITH_ARGS_RETURN_VOID), TRUE, TRUE, FALSE, gEnableDebugger); } else { VariableDefinePlatformVar(pc, NULL, "__exit_value", &pc->IntType, (union AnyValue *)&pc->PicocExitValue, TRUE); if (FuncValue->Val->FuncDef.NumParams == 0) - PicocParse(pc, "startup", CALL_MAIN_NO_ARGS_RETURN_INT, strlen(CALL_MAIN_NO_ARGS_RETURN_INT), TRUE, TRUE, FALSE, TRUE); + PicocParse(pc, "startup", CALL_MAIN_NO_ARGS_RETURN_INT, strlen(CALL_MAIN_NO_ARGS_RETURN_INT), TRUE, TRUE, FALSE, gEnableDebugger); else - PicocParse(pc, "startup", CALL_MAIN_WITH_ARGS_RETURN_INT, strlen(CALL_MAIN_WITH_ARGS_RETURN_INT), TRUE, TRUE, FALSE, TRUE); + PicocParse(pc, "startup", CALL_MAIN_WITH_ARGS_RETURN_INT, strlen(CALL_MAIN_WITH_ARGS_RETURN_INT), TRUE, TRUE, FALSE, gEnableDebugger); } } #endif diff --git a/platform/platform_msvc.c b/platform/platform_msvc.c index e8038a1..582df64 100644 --- a/platform/platform_msvc.c +++ b/platform/platform_msvc.c @@ -1,6 +1,12 @@ #include "../picoc.h" #include "../interpreter.h" +#ifdef NO_DEBUGGER +static int gEnableDebugger = FALSE; +#else +static int gEnableDebugger = TRUE; +#endif + /* mark where to end the program for platforms which require this */ jmp_buf PicocExitBuf; @@ -75,7 +81,7 @@ char *PlatformReadFile(Picoc *pc, const char *FileName) void PicocPlatformScanFile(Picoc *pc, const char *FileName) { char *SourceStr = PlatformReadFile(pc, FileName); - PicocParse(pc, FileName, SourceStr, strlen(SourceStr), TRUE, FALSE, TRUE, TRUE); + PicocParse(pc, FileName, SourceStr, strlen(SourceStr), TRUE, FALSE, TRUE, gEnableDebugger); } /* exit the program */ diff --git a/platform/platform_unix.c b/platform/platform_unix.c index 467cb07..9efe780 100644 --- a/platform/platform_unix.c +++ b/platform/platform_unix.c @@ -6,6 +6,12 @@ #include #endif +#ifdef NO_DEBUGGER +static int gEnableDebugger = FALSE; +#else +static int gEnableDebugger = TRUE; +#endif + /* mark where to end the program for platforms which require this */ jmp_buf PicocExitBuf; @@ -124,7 +130,7 @@ void PicocPlatformScanFile(Picoc *pc, const char *FileName) SourceStr[1] = '/'; } - PicocParse(pc, FileName, SourceStr, strlen(SourceStr), TRUE, FALSE, TRUE, TRUE); + PicocParse(pc, FileName, SourceStr, strlen(SourceStr), TRUE, FALSE, TRUE, gEnableDebugger); } /* exit the program */