diff --git a/src/pre.l b/src/pre.l index ebc6cf8c032..8d2b5f70b3a 100644 --- a/src/pre.l +++ b/src/pre.l @@ -2299,7 +2299,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'")) } {ID}{B}+"1"/[ \r\t\n] { // special case: define with 1 -> can be "guard" //printf("Define `%s'\n",yytext); - g_argDict = 0; + delete g_argDict; g_argDict=0; g_defArgs = -1; g_defArgsStr.resize(0); g_defName = yytext; @@ -2328,7 +2328,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'")) g_expectGuard=FALSE; } {ID}/{B}*"\n" { // empty define - g_argDict = 0; + delete g_argDict; g_argDict=0; g_defArgs = -1; g_defName = yytext; g_defArgsStr.resize(0); @@ -2357,7 +2357,7 @@ CHARLIT (("'"\\[0-7]{1,3}"'")|("'"\\."'")|("'"[^'\\\n]{1,4}"'")) } {ID}/{B}* { // define with content //printf("Define `%s'\n",yytext); - g_argDict = 0; + delete g_argDict; g_argDict=0; g_defArgs = -1; g_defArgsStr.resize(0); g_defText.resize(0);