Merge branch 'mesa_7_6_branch'
[mesa.git] / src / mesa / shader / program_parser.h
index bce6041381f985347d3d9532d67e755ffb06ecb0..25b413918aae2ed1765cb21195635084d441bc09 100644 (file)
@@ -38,6 +38,13 @@ enum asm_type {
    at_output,
 };
 
+/**
+ * \note
+ * Objects of this type are allocated as the object plus the name of the
+ * symbol.  That is, malloc(sizeof(struct asm_symbol) + strlen(name) + 1).
+ * Alternately, asm_symbol::name could be moved to the bottom of the structure
+ * and declared as 'char name[0];'.
+ */
 struct asm_symbol {
    struct asm_symbol *next;    /**< List linkage for freeing. */
    const char *name;
@@ -157,6 +164,15 @@ struct asm_parser_state {
    /*@}*/
 
 
+   /**
+    * Buffer to hold strings transfered from the lexer to the parser
+    */
+   /*@{*/
+   char *string_dumpster;      /**< String data transfered. */
+   size_t dumpster_size;       /**< Total size, in bytes, of the buffer. */
+   /*@}*/
+
+
    /**
     * Selected limits copied from gl_constants
     *