Changeset: ad4c60d6957e for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=ad4c60d6957e
Modified Files:
monetdb5/mal/mal_parser.c
Branch: trails
Log Message:
Merge with default
diffs (43 lines):
diff --git a/monetdb5/mal/mal_parser.c b/monetdb5/mal/mal_parser.c
--- a/monetdb5/mal/mal_parser.c
+++ b/monetdb5/mal/mal_parser.c
@@ -945,8 +945,11 @@ parseAtom(Client cntxt)
tpe = parseTypeId(cntxt, TYPE_int);
if( ATOMindex(modnme) >= 0)
parseError(cntxt, "Atom redefinition\n");
- else
- cntxt->curprg->def->errors = malAtomDefinition(modnme, tpe) ;
+ else {
+ if(cntxt->curprg->def->errors)
+ GDKfree(cntxt->curprg->def->errors);
+ cntxt->curprg->def->errors = malAtomDefinition(modnme, tpe);
+ }
if( strcmp(modnme,"user"))
cntxt->curmodule = fixModule(modnme);
else cntxt->curmodule = cntxt->usermodule;
@@ -1116,6 +1119,8 @@ fcnHeader(Client cntxt, int kind)
cntxt->curprg = cntxt->backup;
return 0;
}
+ cntxt->curprg->def->errors = cntxt->backup->def->errors;
+ cntxt->backup->def->errors = 0;
curPrg = cntxt->curprg;
curBlk = curPrg->def;
curInstr = getInstrPtr(curBlk, 0);
@@ -1285,6 +1290,8 @@ parseCommandPattern(Client cntxt, int ki
else
insertSymbol(getModule(modnme), curPrg);
chkProgram(cntxt->usermodule, curBlk);
+ if(cntxt->curprg->def->errors)
+ GDKfree(cntxt->curprg->def->errors);
cntxt->curprg->def->errors = cntxt->backup->def->errors;
cntxt->backup->def->errors = 0;
cntxt->curprg = cntxt->backup;
@@ -1521,7 +1528,6 @@ parseAssign(Client cntxt, int cntrl)
curPrg = cntxt->curprg;
curBlk = curPrg->def;
- curInstr = newInstruction(curBlk, NULL, NULL);
if((curInstr = newInstruction(curBlk, NULL, NULL)) == NULL) {
parseError(cntxt, MAL_MALLOC_FAIL);
return;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list