Age | Commit message (Collapse) | Author |
|
Since _mesa_glsl_initialize_types add types for various extensions, we
can't call it until after processing "#extension foo : disable" lines.
Fixes tex_rect_02.frag.
|
|
This causes the following tests to pass:
glslparsertest/glsl2/precision-03.vert
|
|
This causes the following tests to pass:
glslparsertest/glsl2/precision-02.vert
glslparsertest/glsl2/precision-04.vert
glslparsertest/glsl2/precision-06.vert
This causes the following test to fail. This shader was previously
failing to compile, but it was failing for the wrong reasons.
glslparsertest/glsl2/precision-03.vert
|
|
This causes an error for code such as 'float;'
|
|
|
|
Previously the list of function call parameters was stored as a
circular list in ast_expression::subexpressions[1]. They are now
stored as a regular list in ast_expression::expressions.
|
|
Since there is no track of which names are structure names during parsing,
TYPE_NAME cannot be produced by the lexer. Use IDENTIFIER and let the AST
processor sort it out.
|
|
Nowhere near complete. It just parses correctly at this point.
|
|
I haven't verified that these are all correct, but it's still a lot
better than not having anything.
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
|
|
|
|
This implementation was wrong anyway because it did not respect
scoping rules. This will need to be revisited soon. The most likely
result is that the grammar is going to need some significant re-work
to be able to use a IDENTIFIER in all the places where a TYPE_NAME is
currently used.
|
|
Add a constructor that uses an ast_struct_specifier and one that uses
a type name. This saves a (trivial) bit of code, but it also ensures
some of the class invariants (i.e., type_name != NULL) are met.
|
|
When the implementation of function_call_header and
function_identifier were changed a few commits ago, the types of the
production changed. This just updates the types specified for the
productions to match reality.
|
|
|
|
|
|
|
|
|
|
|