return FALSE;
}
+/*-----------------------------------------------------------------*/
+/* notUsed - Check, if value in register is not read again */
+/*-----------------------------------------------------------------*/
+FBYNAME (notUsed)
+{
+ const char *what;
+
+ if(cmdLine[0] != '\'')
+ what = hTabItemWithKey (vars, 1);
+ else
+ {
+ cmdLine[strlen(cmdLine) - 1] = 0;
+ what = cmdLine + 1;
+ }
+
+ if (port->peep.notUsed)
+ return port->peep.notUsed (what, endPl, head);
+
+ fprintf (stderr, "Function notUsed not initialized in port structure\n");
+ return FALSE;
+}
+
/*-----------------------------------------------------------------*/
/* operandsNotSame - check if %1 & %2 are the same */
/*-----------------------------------------------------------------*/
},
{
"useAcallAjmp", useAcallAjmp
+ },
+ {
+ "notUsed", notUsed
}
};
/*-----------------------------------------------------------------*/
/* and there can be no additional conditions. */
if (c == '(')
{
- cmdTerm = funcArgs;
- while ((c = *cmdTerm) && c != ')')
- cmdTerm++;
+
+ int num_parenthesis = 0;
+ cmdTerm = funcArgs;
+
+ while ((c = *cmdTerm) && (c != ')' || num_parenthesis))
+ {
+ if (c == '(')
+ num_parenthesis++;
+ else if (c == ')')
+ num_parenthesis--;
+ cmdTerm++;
+ }
*cmdTerm = '\0'; /* terminate the arguments */
if (c == ')')
{