From 558f8ebc97656d7645b4a0a43f2be2d7226bc57c Mon Sep 17 00:00:00 2001 From: johanknol Date: Tue, 18 Sep 2001 09:36:50 +0000 Subject: [PATCH] fixed bug #462479 git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@1284 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- src/SDCCglue.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/SDCCglue.c b/src/SDCCglue.c index 10843a5e..b75c37ba 100644 --- a/src/SDCCglue.c +++ b/src/SDCCglue.c @@ -256,12 +256,14 @@ emitRegularMap (memmap * map, bool addPublics, bool arFlag) // set ival's lineno to where the symbol was defined if (ival) ival->lineno=sym->lineDef; - eBBlockFromiCode (iCodeFromAst (ival)); allocInfo = 1; - /* if the ival was a symbol, delete it from its segment */ - if (IS_AST_SYM_VALUE(sym->ival->init.node)) { + /* if the ival is a symbol assigned to an aggregate, + (bug #458099 -> #462479) + we don't need it anymore, so delete it from its segment */ + if (IS_AST_SYM_VALUE(sym->ival->init.node) && + IS_AGGREGATE (sym->type) ) { symIval=AST_SYMBOL(sym->ival->init.node); segment = SPEC_OCLS (symIval->etype); deleteSetItem (&segment->syms, symIval); -- 2.47.2