removed inclusion of sdccconf.h or sdcc_vc.h
[fw/sdcc] / src / SDCCast.h
index d42b7c6c962d21c6fc129408f2710c00965ff580..9865bb297e1c9fbe8cfcd3cd273c964460ba1002 100644 (file)
@@ -91,6 +91,7 @@ typedef struct ast
        unsigned literalFromCast;       /* true if this is an EX_VALUE of LITERAL 
                                         * type resulting from a typecast.
                                         */
+       int argreg;                     /* argreg number when operand type == EX_OPERAND */
       }
     values;
 
@@ -142,6 +143,8 @@ ast;
 #define AST_VALUE(x)            (x->opval.val)
 #define AST_VALUES(x,y)        (x->values.y)
 #define AST_FOR(x,y) x->values.forVals.y
+#define AST_ARGREG(x) x->values.argreg
+
 #define  IS_AST_PARAM(x)       (IS_AST_OP(x) && x->opval.op == PARAM)
 
 #define  CAN_EVAL(x)   (     x ==  '[' || x == '.' || x == PTR_OP ||   \
@@ -205,6 +208,8 @@ symbol * funcOfTypeVarg (char *, char * , int , char **);
 ast *initAggregates (symbol *, initList *, ast *);
 bool hasSEFcalls (ast *);
 void addSymToBlock (symbol *, ast *);
+void freeStringSymbol(symbol *);
+DEFSETFUNC(resetParmKey);
 
 // exported variables 
 extern set *operKeyReset;