/*****************************************************************************/
-/* Code */
+/* Code */
/*****************************************************************************/
void SymLeaveLevel (void);
/* Leave the current lexical level */
-void SymDef (const char* Name, ExprNode* Expr, int ZP);
+void SymDef (const char* Name, ExprNode* Expr, int ZP, int Label);
/* Define a new symbol */
SymEntry* SymRef (const char* Name);
* either imported or exported.
*/
-void SymInitializer (const char* Name, int ZP);
-/* Mark the given symbol as an initializer. This will also mark the symbol as
- * an export. Initializers may never be zero page symbols, the ZP parameter
- * is supplied to make the prototype the same as the other functions (this
- * is used in pseudo.c). Passing something else but zero as ZP argument will
- * trigger an internal error.
+void SymConDes (const char* Name, unsigned Type, unsigned Prio);
+/* Mark the given symbol as a module constructor/destructor. This will also
+ * mark the symbol as an export. Initializers may never be zero page symbols.
*/
int SymIsConst (SymEntry* Sym);