* src/SDCCsymt.c (checkFunction): fixed bug 1815418 by setting
authorMaartenBrock <MaartenBrock@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Thu, 18 Oct 2007 10:30:17 +0000 (10:30 +0000)
committerMaartenBrock <MaartenBrock@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Thu, 18 Oct 2007 10:30:17 +0000 (10:30 +0000)
  RegBankUsed[] earlier

git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@4934 4a8a32a2-be11-0410-ad9d-d568d2c75423

ChangeLog
src/SDCCsymt.c

index 40552856086035d71f03333a9cc41eed3feb7411..6ee3c0577132c43faf8f05f4ece5f22b62fcf916 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,8 @@
 2007-10-18 Maarten Brock <sourceforge.brock AT dse.nl>
 
        * doc/sdccman.lyx: documented option --Werror
+       * src/SDCCsymt.c (checkFunction): fixed bug 1815418 by setting
+         RegBankUsed[] earlier
 
 2007-10-14 Maarten Brock <sourceforge.brock AT dse.nl>
 
index 5bb73d5a97a47b4db30d8fc2cdea951f72e3009f..6e6eac7f697054684cea84d527218c58c1df7b48 100644 (file)
@@ -2507,6 +2507,9 @@ checkFunction (symbol * sym, symbol *csym)
   }
   argCnt--;
 
+  /*JCF: Mark the register bank as used*/
+  RegBankUsed[FUNC_REGBANK (sym->type)] = 1;
+
   if (!csym && !(csym = findSym (SymbolTab, sym, sym->name)))
     return 1;                   /* not defined nothing more to check  */
 
@@ -2538,9 +2541,6 @@ checkFunction (symbol * sym, symbol *csym)
       werror (E_PREV_DEF_CONFLICT, csym->name, "using");
     }
 
-  /*JCF: Mark the register bank as used*/
-  RegBankUsed[FUNC_REGBANK (sym->type)] = 1;
-
   if (IFFUNC_ISNAKED (csym->type) != IFFUNC_ISNAKED (sym->type))
     {
       werror (E_PREV_DEF_CONFLICT, csym->name, "_naked");