summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/glsl/ast.h10
-rw-r--r--src/glsl/glsl_parser_extras.cpp3
2 files changed, 11 insertions, 2 deletions
diff --git a/src/glsl/ast.h b/src/glsl/ast.h
index c3361a10662..320e8ddd0e5 100644
--- a/src/glsl/ast.h
+++ b/src/glsl/ast.h
@@ -49,7 +49,7 @@ struct YYLTYPE;
*/
class ast_node {
public:
- DECLARE_RZALLOC_CXX_OPERATORS(ast_node);
+ DECLARE_RALLOC_CXX_OPERATORS(ast_node);
/**
* Print an AST node in something approximating the original GLSL code
@@ -576,6 +576,10 @@ public:
virtual void print(void) const;
bool has_qualifiers() const;
+ ast_fully_specified_type() : qualifier(), specifier(NULL)
+ {
+ }
+
const struct glsl_type *glsl_type(const char **name,
struct _mesa_glsl_parse_state *state)
const;
@@ -859,6 +863,10 @@ public:
class ast_function_definition : public ast_node {
public:
+ ast_function_definition() : prototype(NULL), body(NULL)
+ {
+ }
+
virtual void print(void) const;
virtual ir_rvalue *hir(exec_list *instructions,
diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp
index 3bc8d482775..4f2f2893a90 100644
--- a/src/glsl/glsl_parser_extras.cpp
+++ b/src/glsl/glsl_parser_extras.cpp
@@ -1050,7 +1050,8 @@ ast_expression::print(void) const
ast_expression::ast_expression(int oper,
ast_expression *ex0,
ast_expression *ex1,
- ast_expression *ex2)
+ ast_expression *ex2) :
+ primary_expression()
{
this->oper = ast_operators(oper);
this->subexpressions[0] = ex0;