]> git.tdb.fi Git - libs/gl.git/blobdiff - source/glsl/syntax.h
Add a utility function for following a chain of base types
[libs/gl.git] / source / glsl / syntax.h
index a3b217d40895f2d6e4ae790abec56082094b6e95..499779d91faf2e162a2b47ef0b48ca8ab88fed84 100644 (file)
@@ -525,7 +525,7 @@ struct Stage
        };
 
        Type type;
-       Stage *previous;
+       Stage *previous = 0;
        Block content;
        std::map<std::string, TypeDeclaration *> types;
        std::map<std::string, InterfaceBlock *> interface_blocks;
@@ -533,6 +533,7 @@ struct Stage
        std::map<std::string, unsigned> locations;
        std::map<std::string, unsigned> texture_bindings;
        std::map<std::string, unsigned> uniform_block_bindings;
+       unsigned n_clip_distances = 0;
        Features required_features;
        std::vector<Diagnostic> diagnostics;
 
@@ -551,9 +552,10 @@ struct Module
 };
 
 std::string get_unused_variable_name(const Block &, const std::string &);
-
+const TypeDeclaration *get_ultimate_base_type(const TypeDeclaration *);
 int get_layout_value(const Layout &, const std::string &, int = -1);
 void add_to_chain(Assignment::Target &, Assignment::Target::ChainType, unsigned);
+bool targets_overlap(const Assignment::Target &, const Assignment::Target &);
 
 } // namespace SL
 } // namespace GL