]> git.sur5r.net Git - cc65/blobdiff - src/ld65/exports.h
Ignore module.inc
[cc65] / src / ld65 / exports.h
index df35676109032d69d7102df58c24779e7914d506..1a0e1a008f612756f828657fc41aa3458e6441f2 100644 (file)
@@ -41,6 +41,7 @@
 #include <stdio.h>
 
 /* common */
+#include "cddefs.h"
 #include "exprdefs.h"
 #include "filepos.h"
 
@@ -82,6 +83,7 @@ struct Export {
     FilePos            Pos;            /* File position of definition */
     ExprNode*                  Expr;           /* Expression (0 if not def'd) */
     unsigned char      Type;           /* Type of export */
+    unsigned char      ConDes[CD_TYPE_COUNT];  /* Constructor/destructor decls */
     char*                      Name;           /* Name - dynamically allocated */
 };
 
@@ -121,10 +123,21 @@ Export* CreateConstExport (const char* Name, long Value);
 Export* CreateMemExport (const char* Name, Memory* Mem, unsigned long Offs);
 /* Create an relative export for a memory area offset */
 
+Export* CreateSegExport (const char* Name, Section* S, unsigned long Offs);
+/* Create a relative export to a segment (section) */
+
+Export* FindExport (const char* Name);
+/* Check for an identifier in the list. Return 0 if not found, otherwise
+ * return a pointer to the export.
+ */
+
 int IsUnresolved (const char* Name);
 /* Check if this symbol is an unresolved export */
 
-int IsConstExport (const Export* E);
+int IsUnresolvedExport (const Export* E);
+/* Return true if the given export is unresolved */
+
+int IsConstExport (const Export* E);  
 /* Return true if the expression associated with this export is const */
 
 long GetExportVal (const Export* E);
@@ -157,7 +170,7 @@ void CircularRefError (const Export* E);
 /* Print an error about a circular reference using to define the given export */
 
 
-            
+
 /* End of exports.h */
 
 #endif