John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							71c100d7c0 
							
						 
					 
					
						
						
							
							GLSL output: Removed fixed-size buffer;  fixes   #769 .  
						
						... 
						
						
						
						Makes some white-space differences in most output, plus a few cases
where more could have been put out but was cut short by the previous
fix-sized buffer. 
						
						
					 
					
						2017-03-14 19:51:29 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							906cc21816 
							
						 
					 
					
						
						
							
							Linker: Eliminate uncalled functions, because they can be ill-defined.  
						
						... 
						
						
						
						Fixes issue #610 . Also provides a testing option to keep uncalled functions. 
						
						
					 
					
						2016-12-09 19:22:20 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							5e56423046 
							
						 
					 
					
						
						
							
							Front-ends: Remove now defunct afterEOF and related, use scanner's instead.  
						
						... 
						
						
						
						Code using atEndOfFile was dead, instead do something useful with
the scanners atEndOfInput().  This allows a better error message
for early termination of cascading errors. 
						
						
					 
					
						2016-08-31 13:46:50 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							cc16fa0720 
							
						 
					 
					
						
						
							
							Tests: Move to just linefeed to simply cross-platform test changes.  
						
						
						
						
					 
					
						2015-12-10 18:01:54 -07:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							c777fc2c4c 
							
						 
					 
					
						
						
							
							Scanning: 1) rationalize end-of-input everywhere, 2) prevent infinite loop at end-of-input, 3) use positive chars.  
						
						... 
						
						
						
						Fixes issue #25 . (char 255 aliased to -1 and missing tests for end of input).
1) All layers of input scanning now share a single EndOfInput value.
This avoids translation of it across layers of encapsulation.
2) Some places looking for end of line were not stopping on EndOfInput.
3) Use of "char" for the input made char values > 127 be negative numbers.
This allowed for aliasing of 255 to -1, etc.  This is fixed by using
unsigned char. 
						
						
					 
					
						2015-07-27 09:37:55 -06:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							dff18a2be0 
							
						 
					 
					
						
						
							
							glslang: Formally track all built-in variables, right from the beginning, to enable avoiding all textual compares at any subsequent stage in the stack.  (To be used in future check ins.)  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@31224  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-05-18 16:45:49 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							8b37b04ecc 
							
						 
					 
					
						
						
							
							glslang AST output: include global vs. temp (local) in the printed output.  This only effects test results, but a future check-in is going to fix some globals.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30973  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2015-04-29 10:16:56 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							bae44b74d4 
							
						 
					 
					
						
						
							
							Finish GL_ARB_shading_language_420pack: *ProgramTexelOffset built-in constants.  Also, make comma operation not fold constants.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@26602  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2014-05-11 01:07:31 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							cf0206c341 
							
						 
					 
					
						
						
							
							Restore r26245 and all tests and test results since 4/1:  
						
						... 
						
						
						
						r26245: Remove "not yet complete" warning for versions 130 and 140, after tidying up a bit and adding tests.  Token pasting is the only known missing feature, and gives its own message now on use.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@26226  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2014-04-14 15:46:40 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							b4ef9e0d56 
							
						 
					 
					
						
						
							
							Track which extensions were enabled or required, in the intermediate representation, for reflection of the consumer.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@26155  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2014-03-31 22:20:47 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							fcb4ed054c 
							
						 
					 
					
						
						
							
							Preprocessor: Rationalize, simplify, and correct the stack of input sources and their tokenization.  This included  
						
						... 
						
						
						
						- consistently dealing with EOF and its effect on error recovery (bug 11444, #1 )
 - turning a simulated OO hierarchy of function pointers and typecasting into a real C++ class hierarchy
 - correctly handling '\' everywhere, in all classes of tokens, as a layer before preprocessing itself
 - conditionally handling '\n' in macro expansion input, depending on whether it is in a macro expression or not
 - delete some unused "memory cleanup" code
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24626  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-12-30 20:34:28 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							8e789e8d62 
							
						 
					 
					
						
						
							
							Fixed a couple places that missed the error check for #else/#elif after #else.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24378  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-12-05 21:51:40 +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 
							
						 
					 
					
						
						
						
						
							
						
						
							69aa9c1b84 
							
						 
					 
					
						
						
							
							Fixes to scanning:  
						
						... 
						
						
						
						- do version checking for the line-continuation character
 - check for built-in names in #undef
 - bug fix for #elif after #else
 - do version checking for use of floating point suffixes (f, LF, etc.)
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24011  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-11-12 03:31:24 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							0d22e31c75 
							
						 
					 
					
						
						
							
							Implement 1.20 style function signature matching under implicit conversion.  This was the last key unimplemented feature of versions 120 through 330.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23798  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-10-30 23:17:34 +00:00 
						 
				 
			
				
					
						
							
							
								John Kessenich 
							
						 
					 
					
						
						
						
						
							
						
						
							447fc3613a 
							
						 
					 
					
						
						
							
							Add message indicating level of completeness for not-yet-complete versions.  
						
						... 
						
						
						
						git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@23313  e7fa87d3-cd2b-0410-9028-fcbf551c1848 
						
						
					 
					
						2013-10-01 23:13:50 +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 
							
						 
					 
					
						
						
						
						
							
						
						
							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