glsl: Add an is_declaration field to ast_struct_specifier.

Will be used in a later commit to differentiate between a structure type
declaration and a variable declaration of a struct type. I.e., the
difference between

   struct S { float x; }; (is_declaration = true)

and

   S s;                   (is_declaration = false)

Also note that is_declaration = true for

   struct S { float x; } s;

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
Matt Turner
2013-06-26 15:53:12 -07:00
parent 5df807b06f
commit 8d45caaeba
2 changed files with 4 additions and 1 deletions

View File

@@ -460,7 +460,8 @@ public:
* be modified. Zeros the inherited ast_node's fields.
*/
ast_struct_specifier(const ast_struct_specifier& that):
ast_node(), name(that.name), declarations(that.declarations)
ast_node(), name(that.name), declarations(that.declarations),
is_declaration(that.is_declaration)
{
/* empty */
}
@@ -475,6 +476,7 @@ public:
const char *name;
/* List of ast_declarator_list * */
exec_list declarations;
bool is_declaration;
};