Updated: Witness changes to hlsl2glsl:
* added GLSL 1.40 target
* fixed a bug where duplicates were left in uniforms list
* allow non-type-explicit constant initializers
e.g. where your hlsl could do:
uniform float3 my_constants = float3(1, 2, 3);
now also allow this, which (afaik) is valid hlsl:
uniform float3 my_constants = { 1, 2, 3 };
e.g. texture() and textureProj() instead of texture2D() and texture2DProj().
To do this I now (optionally) pass the ETargetVersion to Hlsl2Glsl_Initialize so it can choose what style of texture lookup functions initializeHLSLSupportLibrary() inserts into hlslSupportLib.
This means once initialized, every call to Hlsl2Glsl_Translate() has to use the matching ETargetVersion.
* yyerror takes a const char* instead of a char*
* binary not is ~, not -
* enable some bitwise operations as supported features
* add missing outES test files
* fix empty body if handling
* fix cast on function call
* add struct initialisation by scalar support
* fix global-init test
* add (shotgun style) coverage mask support
* Fix inverted left and right shift operators
* fix EOpRightShiftAssign output, >>=, not ??=
* promote constant union to right type, plus fixes
* Add support for more semantics
* Add tests for tokenpasting and global initialization
* add execute permission to bison and flex
* various swizzle and arrays fixes.
* Fix bad order in HLSL matrix rows/columns, add definitions for mul(float.*, float.*)
* update tests results matrix non square
* fix in type construction for swizzle
* Add overloading tests
* handle upward vector promotion in TSymbolTableLevel::findCompatible…
* Add test for non-square matrix and vector promotion
* Fix vector upward promotion for single argument functions
* Add support for non square matrices
* remove unistd.h
* fix CMakeList
* hlsl2glsltest: add glut fallback version