aboutsummaryrefslogtreecommitdiff
path: root/tool/lemon.c
diff options
context:
space:
mode:
Diffstat (limited to 'tool/lemon.c')
-rw-r--r--tool/lemon.c20
1 files changed, 5 insertions, 15 deletions
diff --git a/tool/lemon.c b/tool/lemon.c
index 52304a591..057a883c1 100644
--- a/tool/lemon.c
+++ b/tool/lemon.c
@@ -2284,21 +2284,11 @@ to follow the previous rule.");
psp->errorcnt++;
psp->state = RESYNC_AFTER_DECL_ERROR;
}else{
- struct symbol *sp = Symbol_find(x);
- if((sp) && (sp->datatype)){
- ErrorMsg(psp->filename,psp->tokenlineno,
- "Symbol %%destructor \"%s\" already defined", x);
- psp->errorcnt++;
- psp->state = RESYNC_AFTER_DECL_ERROR;
- }else{
- if (!sp){
- sp = Symbol_new(x);
- }
- psp->declargslot = &sp->destructor;
- psp->decllinenoslot = &sp->destLineno;
- psp->insertLineMacro = 1;
- psp->state = WAITING_FOR_DECL_ARG;
- }
+ struct symbol *sp = Symbol_new(x);
+ psp->declargslot = &sp->destructor;
+ psp->decllinenoslot = &sp->destLineno;
+ psp->insertLineMacro = 1;
+ psp->state = WAITING_FOR_DECL_ARG;
}
break;
case WAITING_FOR_DATATYPE_SYMBOL: