X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fglsl%2Fresolve.h;h=92a7c336de71fbbb8a217dd7ece8dd29040c4ea2;hb=0585e361d8714ac4efc3ae3e1d5c8c9aa8841c34;hp=10322d49f67e89d80f61b994177f18c1b2b0588b;hpb=f438142c7589df7480aa640cf62b7a2c3d48bab2;p=libs%2Fgl.git diff --git a/source/glsl/resolve.h b/source/glsl/resolve.h index 10322d49..92a7c336 100644 --- a/source/glsl/resolve.h +++ b/source/glsl/resolve.h @@ -30,7 +30,7 @@ class TypeResolver: private TraversingVisitor private: Stage *stage = 0; std::map alias_map; - std::map array_types; + std::map, TypeDeclaration *> array_types; NodeList::iterator type_insert_point; InterfaceBlock *iface_block = 0; bool r_any_resolved = false; @@ -102,6 +102,7 @@ private: }; Stage *stage = 0; + const FunctionDeclaration *current_function = 0; std::vector basic_types; NodeList::iterator insert_point; bool r_any_resolved = false; @@ -133,6 +134,8 @@ private: virtual void visit(FunctionCall &); virtual void visit(BasicTypeDeclaration &); virtual void visit(VariableDeclaration &); + virtual void visit(FunctionDeclaration &); + virtual void visit(Return &); }; /** Resolves function declarations and calls. */