/* */
/* */
/* */
-/* (C) 2000 Ullrich von Bassewitz */
-/* Wacholderweg 14 */
-/* D-70597 Stuttgart */
-/* EMail: uz@musoftware.de */
+/* (C) 2000-2008 Ullrich von Bassewitz */
+/* Roemerstrasse 52 */
+/* D-70794 Filderstadt */
+/* EMail: uz@cc65.org */
/* */
/* */
/* This software is provided 'as-is', without any expressed or implied */
/* Masks for the Flags field in FuncDesc */
-#define FD_IMPLICIT 0x0001U /* Implicitly declared function */
-#define FD_EMPTY 0x0002U /* Function with empty param list */
-#define FD_VOID_PARAM 0x0004U /* Function with a void param list */
-#define FD_ELLIPSIS 0x0008U /* Function with variable param list */
-#define FD_FASTCALL 0x0010U /* __fastcall__ function */
-#define FD_OLDSTYLE 0x0020U /* Old style (K&R) function */
-#define FD_UNNAMED_PARAMS 0x0040U /* Function has unnamed params */
+#define FD_NONE 0x0000U /* No flags */
+#define FD_EMPTY 0x0001U /* Function with empty param list */
+#define FD_VOID_PARAM 0x0002U /* Function with a void param list */
+#define FD_VARIADIC 0x0004U /* Function with variable param list */
+#define FD_OLDSTYLE 0x0010U /* Old style (K&R) function */
+#define FD_OLDSTYLE_INTRET 0x0020U /* K&R func has implicit int return */
+#define FD_UNNAMED_PARAMS 0x0040U /* Function has unnamed params */
/* Bits that must be ignored when comparing funcs */
-#define FD_IGNORE (FD_IMPLICIT | FD_UNNAMED_PARAMS)
+#define FD_IGNORE (FD_OLDSTYLE | FD_OLDSTYLE_INTRET | FD_UNNAMED_PARAMS)
struct SymTable* TagTab; /* Symbol table for structs/enums */
unsigned ParamCount; /* Number of parameters */
unsigned ParamSize; /* Size of the parameters */
+ struct SymEntry* LastParam; /* Pointer to last parameter */
};
FuncDesc* NewFuncDesc (void);
/* Create a new symbol table with the given name */
-void FreeFuncDesc (FuncDesc* E);
+void FreeFuncDesc (FuncDesc* D);
/* Free a function descriptor */