aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backendC/CleanCompilerSources/backend.c9
-rw-r--r--backendC/CleanCompilerSources/backend.h2
-rw-r--r--coclmaindll/backend.dllbin1622 -> 1670 bytes
3 files changed, 10 insertions, 1 deletions
diff --git a/backendC/CleanCompilerSources/backend.c b/backendC/CleanCompilerSources/backend.c
index 717e49d..360cbaa 100644
--- a/backendC/CleanCompilerSources/backend.c
+++ b/backendC/CleanCompilerSources/backend.c
@@ -402,12 +402,19 @@ BEDeclareDclModule (int moduleIndex, CleanString name, int isSystemModule, int n
char *cName;
SymbolP moduleNameSymbol;
DefMod dclModule;
+ SymbolP saveSymbols;
cName = ConvertCleanString (name);
moduleNameSymbol = ConvertAllocType (SymbolS);
moduleNameSymbol->symb_ident = Identifier (cName);
+ if (moduleIndex == main_dcl_module_n)
+ {
+ saveSymbols = gBEState.be_allSymbols;
+ gBEState.be_allSymbols = NULL;
+ }
+
DeclareModule (moduleIndex, cName, isSystemModule, nFunctions, nTypes, nConstructors, nFields);
dclModule = ConvertAllocType (DefRepr);
@@ -417,6 +424,8 @@ BEDeclareDclModule (int moduleIndex, CleanString name, int isSystemModule, int n
if (moduleIndex != main_dcl_module_n)
AddOpenDefinitionModule (moduleNameSymbol, dclModule);
+ else
+ gBEState.be_allSymbols = saveSymbols;
} /* BEDeclareDclModule */
void
diff --git a/backendC/CleanCompilerSources/backend.h b/backendC/CleanCompilerSources/backend.h
index 03ae105..5756288 100644
--- a/backendC/CleanCompilerSources/backend.h
+++ b/backendC/CleanCompilerSources/backend.h
@@ -1,6 +1,6 @@
/* version info */
-# define kBEVersionCurrent 0x02000204
+# define kBEVersionCurrent 0x02000205
# define kBEVersionOldestDefinition 0x02000204
# define kBEVersionOldestImplementation 0x02000204
diff --git a/coclmaindll/backend.dll b/coclmaindll/backend.dll
index 9d6b409..f9c65cd 100644
--- a/coclmaindll/backend.dll
+++ b/coclmaindll/backend.dll
Binary files differ