#ifndef __EXPANDHLL
static
#endif
ret_code ExpandToken( char *line, int *pi, struct asm_tok tokenarray[], int max, int bracket_flags, int equmode )

ret_code ExpandLine( char *string, struct asm_tok tokenarray[] )
/**************************************************************/
{
...
	/* scan the line from left to right for (text) macros.
	 * it's currently not quite correct. a macro proc should only
	 * be evaluated in the following cases:
	 * 1. it is the first token of a line
	 * 2. it is the second token, and the first one is an ID
	 * 3. it is the third token, the first one is an ID and
	 *    the second is a ':' or '::'.
	 */
#ifdef __EXPANDHLL
    	if (stricmp(tokenarray[0].string_ptr, ".elseif") &&
	    stricmp(tokenarray[0].string_ptr, ".while"))
#endif
	while ( count < Token_Count ) {
	    int tmp;
	    int addbrackets;
	    addbrackets = bracket_flags & 1;
