19 static as zstring * FB_MAXLITLEN+1 text
20 dim as FBSYMCHAIN
ptr chain_ =
any
21 dim as FBSYMBOL
ptr sym =
any
22 dim as ASTNODE
ptr expr =
any
23 dim as ASTASMTOK
ptr head =
any, tail =
any
24 dim as integer doskip =
any, thisTok =
any
31 select case as const thisTok
32 case FB_TK_END, FB_TK_EOL, FB_TK_COMMENT, FB_TK_REM, FB_TK_EOF
43 case FB_TKCLASS_IDENTIFIER, FB_TKCLASS_QUIRKWD
44 if thistok = FB_TK_SIZEOF
then
49 if( astIsCONST( expr ) )
then
63 elseif( (env.clopt.backend = FB_BACKEND_GCC)
orelse emitIsKeyword(
lcase(text) ) = FALSE )
then
64 dim as FBSYMBOL
ptr base_parent =
any
67 do while( chain_ <> NULL )
68 dim as FBSYMBOL
ptr s = chain_->sym
70 select case symbGetClass( s )
71 case FB_SYMBCLASS_PROC, FB_SYMBCLASS_LABEL
76 case FB_SYMBCLASS_CONST
84 if( sym <> NULL )
then
85 symbSetIsAccessed( sym )
92 loop while( s <> NULL )
94 chain_ = symbChainGetNext( chain_ )
99 case FB_TKCLASS_NUMLITERAL
101 if( expr <> NULL )
then
106 case FB_TKCLASS_STRLITERAL
108 if( expr <> NULL )
then
110 if( litsym <> NULL )
then
112 if( symbGetType( litsym ) <> FB_DATATYPE_WCHAR )
then
113 text += *symbGetVarLitText( litsym )
115 text += *symbGetVarLitTextW( litsym )
124 case FB_TKCLASS_KEYWORD
129 if( sym = NULL )
then
133 symbSetIsAccessed( sym )
139 if( expr <> NULL )
then
141 if( astIsCONST( expr ) )
then
158 if( doskip = FALSE )
then
164 if( head = NULL )
then
173 if( head <> NULL )
then
183 dim as integer issingleline =
any
219 if( issingleline = FALSE )
then
234 if( issingleline )
then
252 if( issingleline = FALSE )
then
257 if( issingleline = FALSE )
then
259 if(
hMatch( FB_TK_END ) = FALSE )
then
261 elseif(
hMatch( FB_TK_ASM ) = FALSE )
then