]> git.xonotic.org Git - xonotic/gmqcc.git/blobdiff - gmqcc.h
Test for gmqcc in check-proj
[xonotic/gmqcc.git] / gmqcc.h
diff --git a/gmqcc.h b/gmqcc.h
index 5ac193533538bc9c0805e1c754cb268e360f138b..d8ad37465ef0525ea2298a9eb484f7a6e9220f04 100644 (file)
--- a/gmqcc.h
+++ b/gmqcc.h
@@ -332,7 +332,6 @@ void *stat_mem_allocate  (size_t, size_t, const char *);
 bool  util_filexists     (const char *);
 bool  util_strupper      (const char *);
 bool  util_strdigit      (const char *);
-void  util_debug         (const char *, const char *, ...);
 void  util_endianswap    (void *,  size_t, unsigned int);
 
 size_t util_strtocmd         (const char *, char *, size_t);
@@ -726,7 +725,8 @@ enum {
     VINSTR_BITOR_VF,
     VINSTR_BITXOR,
     VINSTR_BITXOR_V,
-    VINSTR_BITXOR_VF /* BITXOR_VF must be the last emulated bitop */
+    VINSTR_BITXOR_VF,
+    VINSTR_CROSS
 };
 
 /* TODO: elide */
@@ -740,6 +740,7 @@ typedef uint32_t qcuint_t;
 typedef struct {
     prog_section_statement_t *statements;
     int                      *linenums;
+    int                      *columnnums;
     prog_section_def_t       *defs;
     prog_section_field_t     *fields;
     prog_section_function_t  *functions;
@@ -751,6 +752,16 @@ typedef struct {
     qcint_t                   string_cached_empty;
 } code_t;
 
+/*
+ * A shallow copy of a lex_file to remember where which ast node
+ * came from.
+ */
+typedef struct {
+    const char *file;
+    size_t      line;
+    size_t      column;
+} lex_ctx_t;
+
 /*
  * code_write          -- writes out the compiled file
  * code_init           -- prepares the code file
@@ -765,18 +776,9 @@ code_t   *code_init          (void);
 void      code_cleanup       (code_t *);
 uint32_t  code_genstring     (code_t *, const char *string);
 qcint_t   code_alloc_field   (code_t *, size_t qcsize);
-void      code_push_statement(code_t *, prog_section_statement_t *stmt, int linenum);
+void      code_push_statement(code_t *, prog_section_statement_t *stmt, lex_ctx_t ctx);
 void      code_pop_statement (code_t *);
 
-/*
- * A shallow copy of a lex_file to remember where which ast node
- * came from.
- */
-typedef struct {
-    const char *file;
-    size_t      line;
-    size_t      column;
-} lex_ctx_t;
 
 /*===================================================================*/
 /*============================ con.c ================================*/