From: sandeep Date: Sat, 7 Oct 2000 22:07:44 +0000 (+0000) Subject: fixuptypes fixed X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=a27443033b9283770dc1c2a0b5339799cee72ca9;p=fw%2Fsdcc fixuptypes fixed git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@448 4a8a32a2-be11-0410-ad9d-d568d2c75423 --- diff --git a/src/SDCCsymt.c b/src/SDCCsymt.c index 0bd3032f..7d395978 100644 --- a/src/SDCCsymt.c +++ b/src/SDCCsymt.c @@ -1211,7 +1211,11 @@ int checkType ( link *dest, link *src ) else return 0; } - + + /* if one is a specifier and the other is not */ + if ((IS_SPEC(src) && !IS_SPEC(dest)) || + (IS_SPEC(dest) && !IS_SPEC(src))) return 0; + /* if one of them is a void then ok */ if (SPEC_NOUN(dest) == V_VOID && SPEC_NOUN(src) != V_VOID ) @@ -1237,8 +1241,8 @@ int checkType ( link *dest, link *src ) if (IS_BITFIELD(dest) && IS_BITFIELD(src) && (SPEC_BLEN(dest) != SPEC_BLEN(src) || SPEC_BSTR(dest) != SPEC_BSTR(src))) - return -1; - + return -1; + /* it is a specifier */ if (SPEC_NOUN(dest) != SPEC_NOUN(src)) { if (SPEC_USIGN(dest) == SPEC_USIGN(src) &&