]> git.sur5r.net Git - cc65/commitdiff
Check for invalid function names before trying to compare the name against
authorcuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 11 Jul 2004 13:47:57 +0000 (13:47 +0000)
committercuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Sun, 11 Jul 2004 13:47:57 +0000 (13:47 +0000)
the names of known standard functions.

git-svn-id: svn://svn.cc65.org/cc65/trunk@3154 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/cc65/expr.c

index 1caadef142036b5323edeec198047f624e07f76e..da616b01d6871a478756edbea13f83a244ea1491 100644 (file)
@@ -492,7 +492,6 @@ static void FunctionCall (ExprDesc* Expr)
 {
     FuncDesc*    Func;           /* Function descriptor */
     int           IsFuncPtr;      /* Flag */
-    int           StdFunc;        /* Standard function index */
     unsigned     ParamSize;      /* Number of parameter bytes */
     CodeMark             Mark;
     int           PtrOffs = 0;    /* Offset of function pointer on stack */
@@ -538,12 +537,13 @@ static void FunctionCall (ExprDesc* Expr)
        }
 
     /* Check for known standard functions and inline them */
-    } else if ((StdFunc = FindStdFunc ((const char*) Expr->Name)) >= 0) {
-
-       /* Inline this function */
-               HandleStdFunc (StdFunc, Func, Expr);
-               return;
-
+    } else if (Expr->Name != 0) {
+        int StdFunc = FindStdFunc ((const char*) Expr->Name);
+        if (StdFunc >= 0) {
+            /* Inline this function */
+            HandleStdFunc (StdFunc, Func, Expr);
+            return;
+        }
     }
 
     /* Parse the parameter list */