void preprocess_pragma_msp();
void preprocess_stage();
- RefPtr<Statement> parse_global_declaration();
+ template<typename T>
+ RefPtr<T> create_node();
template<typename T>
RefPtr<T> parse_with_recovery(RefPtr<T> (Parser::*)());
+ RefPtr<Statement> parse_global_declaration();
RefPtr<Statement> parse_statement();
RefPtr<Import> parse_import();
RefPtr<Precision> parse_precision();
template<typename T>
void parse_block(Block &, bool, RefPtr<T> (Parser::*)());
RefPtr<Expression> parse_expression(unsigned = 0);
- RefPtr<BinaryExpression> parse_binary(const RefPtr<Expression> &, const Operator *);
+ RefPtr<BinaryExpression> parse_binary(const RefPtr<Expression> &, const Operator &);
RefPtr<FunctionCall> parse_function_call(const VariableReference &);
RefPtr<StructDeclaration> parse_struct_declaration();
RefPtr<VariableDeclaration> parse_variable_declaration();