John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							7fc3669195 
							
						 
					 
					
						
						
							
							Preprocessor: Add short-circuit logic so ES errors are not given on undefined variables that are short circuited in && and || preprocessing expressions.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24390  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-12-06 18:19:22 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							98434bed00 
							
						 
					 
					
						
						
							
							Preprocessor fixes:  
						
						... 
						
						
						
						- Correctly handle non-directive lines starting with "#"
 - Correctly ignore unrecognized #pragma
 - Partial fix for new lines in the middle of macro invocation
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24266  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-12-02 15:56:38 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5134b9cf57 
							
						 
					 
					
						
						
							
							Track what ins/outs/uniforms are used, so that errors like "declare after use" or "can't use both XXX and YYY" can be issued.  So far, used this for invariant, gl_FragColor et. al., and gl_FragCoord use before redeclaration.  
						
						... 
						
						
						
						Also made all tests in testlist include linker tests.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24156  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-11-20 21:12:43 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							e1dba1b59f 
							
						 
					 
					
						
						
							
							Fix a preprocessor memory leak by cleaning up some preprocessor memory management.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24125  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-11-19 20:52:56 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4d6570a1b3 
							
						 
					 
					
						
						
							
							Fix several issues in the preprocessor:  
						
						... 
						
						
						
						- macro expansion of hexidecimal numbers 
 - give errors instead of warnings/silence on extra tokens after #endif, #else, etc.
 - give errors on reserved macro name use, reuse of argument, and redefinition with different whitespace presence
 - detect and give error for all cases of #elif and #else after #else
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23982  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-11-10 23:07:36 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b0a7eb599b 
							
						 
					 
					
						
						
							
							Stop emitting the "#version missing" warning, and hook up the existing "suppress warnings" to a command-line option (-w).  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23952  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-11-07 17:44:20 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							8d8f4cc408 
							
						 
					 
					
						
						
							
							Minor preprocessor fix for error message line/string numbers coming from source line, not macro line.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23576  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-10-18 03:09:37 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							f2ee3dd46a 
							
						 
					 
					
						
						
							
							Add full support for uniforms with initializers, including intra-stage link validation of aggregate constant initializers.  
						
						... 
						
						
						
						This included 
 - encapsulating aggregate constants
 - removal of constant-aggregate comparison algorithms, instead using a flattened and direct std::vector comparison
 - adding structure type comparison for independently declared structures that still might match types
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23274  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-09-28 04:02:08 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							9839e2440e 
							
						 
					 
					
						
						
							
							Unify the 8 grammar productions for declaring variables.  This greatly simplifies making changes for this set of productions.  
						
						... 
						
						
						
						This change also naturally picks up redeclarations of built-in arrays and the addition of the remaining linker objects of const, arrays, etc.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23246  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-09-26 00:45:21 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							337dbc7d8c 
							
						 
					 
					
						
						
							
							Add basic intra-stage linking validation for matching types and qualification of uniforms/ins/outs/globals, function body duplication, and mixing ES/non-ES shaders.  
						
						... 
						
						
						
						Still need to handle arrays and built-in redeclarations, and many more rules, but this puts the basics in place.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23225  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-09-24 21:18:46 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							69f4b517c2 
							
						 
					 
					
						
						
							
							Add link validation infrastructure for multiple compilation units per stage.  Includes a new, straightforward, C++ interface to the front end.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@22927  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-09-04 21:19:27 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							4586dbdc1b 
							
						 
					 
					
						
						
							
							Track expected test results and add more README information.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@22602  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-08-05 15:52:03 +00:00