X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fglsl%2Fcompiler.h;h=674081a07e815beb1e2ac886fb8f32f75552d51b;hb=d9d7ab44d5f88c4537906e77c49db06d6bdc099c;hp=6448ae6cfa6fe962dc5097ffcf2011f835ebbaf9;hpb=c1d3a1d7c1997bc71a30af2e2c25cb4a2b66784b;p=libs%2Fgl.git diff --git a/source/glsl/compiler.h b/source/glsl/compiler.h index 6448ae6c..674081a0 100644 --- a/source/glsl/compiler.h +++ b/source/glsl/compiler.h @@ -41,6 +41,7 @@ private: Features features; Module *module; std::vector imported_names; + bool compiled; bool specialized; std::map spec_values; @@ -121,7 +122,7 @@ private: /** Generates any implicitly defines syntactic structures and resolves variables. */ - void generate(Stage &, Mode); + void generate(Stage &); template bool resolve(Stage &, unsigned &, unsigned); @@ -131,8 +132,12 @@ private: aspects as necessary. */ void resolve(Stage &, unsigned = RESOLVE_ALL); + /** Checks the validity of the module. If the return value is false, the + module's diagnostics list will contain additional information of errors. */ bool validate(Stage &); + static bool diagnostic_line_order(const Diagnostic &, const Diagnostic &); + /** Applies optimizations to a stage. The return value indicates which stage should be optimized next. */ OptimizeResult optimize(Stage &);