David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							15b65468ac 
							
						 
					 
					
						
						
							
							Fix bug where the compiler could crash trying to dereference a decayed accessor expression used as |this|.  
						
						
						
					 
					
						2015-04-18 08:53:13 -04:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							d64bcc763a 
							
						 
					 
					
						
						
							
							Fix bug where complex |this| values could be corrupted while evaluating function arguments. (bug 6329)  
						
						
						
					 
					
						2015-04-18 08:51:02 -04:00 
						 
				 
			
				
					
						
							
							
								Peace-Maker 
							
						 
					 
					
						
						
						
						
							
						
						
							491d24a028 
							
						 
					 
					
						
						
							
							Add missing debug info for multidimensional strings  
						
						... 
						
						
						
						new String:INVISIBLE[2][8];
Multidimensional arrays like this wouldn't get their debug info added to
the debug symbols table.
Bug: https://bugs.alliedmods.net/show_bug.cgi?id=6324 
See Fyren's comment in the bug report.
This patch recursively checks the parent symbol of array dimensions
until it finds the top symbol and uses that to check for the compound
level.
This still allows for early exiting the loop when going out of scope. 
						
					 
					
						2015-04-04 11:05:36 -04:00 
						 
				 
			
				
					
						
							
							
								Peace-Maker 
							
						 
					 
					
						
						
						
						
							
						
						
							9a26ae0526 
							
						 
					 
					
						
						
							
							Fix declaring variable on same line after array  
						
						... 
						
						
						
						int a[5], b;
b would get a size of |0| on the stack instead of a sizeof(cell_t).
Bug: https://bugs.alliedmods.net/show_bug.cgi?id=6335  
						
					 
					
						2015-04-04 11:03:27 -04:00 
						 
				 
			
				
					
						
							
							
								Ryan Stecker 
							
						 
					 
					
						
						
						
						
							
						
						
							8f0067b3b4 
							
						 
					 
					
						
						
							
							Improve the diagnostic given when a function prototype doesn't match an existing definition.  
						
						
						
					 
					
						2015-04-04 10:51:10 -04:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							c944ef18b3 
							
						 
					 
					
						
						
							
							Remove sizeof() as a special-case default argument value.  
						
						
						
					 
					
						2015-02-04 17:18:11 -05:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							79bb037b66 
							
						 
					 
					
						
						
							
							Don't special case hierarchy-free enumeration constants when used as array indices. (bug 6302)  
						
						
						
					 
					
						2015-01-31 22:12:59 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							ea3f491a8e 
							
						 
					 
					
						
						
							
							Fix chained field expressions losing lvalue-ness. (bug 6298)  
						
						
						
					 
					
						2015-01-31 22:12:58 -08:00 
						 
				 
			
				
					
						
							
							
								Nicholas Hastings 
							
						 
					 
					
						
						
						
						
							
						
						
							3a499036ac 
							
						 
					 
					
						
						
							
							Fix incorrect error line show for incorrect return value on forwards (bug 6226).  
						
						
						
					 
					
						2015-01-28 14:46:56 -05:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							bcef7365b0 
							
						 
					 
					
						
						
							
							Fix uninitialized variable in decl_enum().  
						
						
						
					 
					
						2015-01-04 12:17:13 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							9e882783f9 
							
						 
					 
					
						
						
							
							Allow "stock static" in addition to "static stock".  
						
						
						
					 
					
						2015-01-04 12:17:00 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							00a663c1a3 
							
						 
					 
					
						
						
							
							Remove some heinous preprocessor directives.  
						
						... 
						
						
						
						Gone:
 - #emit (bah-roken!)
 - #pragma compress (useless)
 - #pragma library (useless) 
						
					 
					
						2015-01-04 12:16:47 -08:00 
						 
				 
			
				
					
						
							
							
								Ryan Stecker 
							
						 
					 
					
						
						
						
						
							
						
						
							154d84668b 
							
						 
					 
					
						
						
							
							Old style retagging should emit a compiler warning when newdecls are required.  
						
						
						
					 
					
						2014-12-17 16:37:39 -06:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							bab1110bc0 
							
						 
					 
					
						
						
							
							Disallow coercion to/from char[] and any[].  
						
						
						
					 
					
						2014-12-14 02:00:58 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							722a23c818 
							
						 
					 
					
						
						
							
							Redo menu methodmaps.  
						
						
						
					 
					
						2014-12-13 12:53:30 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							b607bfeca9 
							
						 
					 
					
						
						
							
							Reserve 'builtin' as a keyword.  
						
						
						
					 
					
						2014-12-12 21:29:28 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							5b69efe5d4 
							
						 
					 
					
						
						
							
							Add static method support to methodmaps.  
						
						
						
					 
					
						2014-12-12 10:10:46 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							afeae84340 
							
						 
					 
					
						
						
							
							Replace symbol proxies with type symbols.  
						
						... 
						
						
						
						Proxies were rather hacky and complicated, and only existed as a
workaround for oddities with constructors. This patch replaces them with
actual type symbols, a very tiny step to semantically getting rid of tags.
This greatly simplifies how we implement constructors, and paves the way
for using methodmap symbols in field expressions.
Since non-value symbols are new to spcomp1, we place a rather
pigeonholed check into primary() to make sure non-value symbols don't
escape into expressions. 
						
					 
					
						2014-12-12 10:10:43 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							0295f817b8 
							
						 
					 
					
						
						
							
							Allow int: and void: tags, but warn.  
						
						
						
					 
					
						2014-12-10 02:36:30 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							1ee3067575 
							
						 
					 
					
						
						
							
							Gracefully error on newly reserved keywords.  
						
						
						
					 
					
						2014-12-09 23:18:11 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							94bed806fe 
							
						 
					 
					
						
						
							
							Reserve many keywords.  
						
						
						
					 
					
						2014-12-09 23:04:13 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							9c98edd104 
							
						 
					 
					
						
						
							
							Rename "union" semantics to "typeset".  
						
						
						
					 
					
						2014-12-09 22:36:42 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							68e0645813 
							
						 
					 
					
						
						
							
							Add a view_as operator.  
						
						
						
					 
					
						2014-11-30 19:08:25 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							157549e119 
							
						 
					 
					
						
						
							
							Fix a bug where aliased constructors of nullable methodmaps could not be used.  
						
						
						
					 
					
						2014-11-30 18:56:37 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							9f5c8b60ae 
							
						 
					 
					
						
						
							
							Add a "new" keyword for constructing nullable methodmaps.  
						
						
						
					 
					
						2014-11-30 18:38:26 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							62c243f0a5 
							
						 
					 
					
						
						
							
							Fix reading the wrong symbol name when throw argument errors.  
						
						
						
					 
					
						2014-11-22 12:23:57 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							673ff572c5 
							
						 
					 
					
						
						
							
							Disallow retagging enums or using implicit-int as an enum tag.  
						
						
						
					 
					
						2014-11-20 19:30:22 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							79143d8b6e 
							
						 
					 
					
						
						
							
							Port files.inc to transitional syntax.  
						
						
						
					 
					
						2014-11-15 13:42:28 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							cfa0d9341e 
							
						 
					 
					
						
						
							
							Remove handling of class pseudokeyword since there is no C++ API to use it.  
						
						
						
					 
					
						2014-11-09 18:12:30 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							4bc7b9243a 
							
						 
					 
					
						
						
							
							Define 'this' as a keyword.  
						
						
						
					 
					
						2014-11-09 13:01:35 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							22df518ab5 
							
						 
					 
					
						
						
							
							Fix a bug where local dynamic array declarations could be mistakenly parsed as old decls (bug 6280).  
						
						
						
					 
					
						2014-11-09 00:15:09 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							c228be83d6 
							
						 
					 
					
						
						
							
							Revert "Fix a bug where local dynamic array declarations could be mistakenly parsed as old decls."  
						
						... 
						
						
						
						This reverts commit 046f167b6e 
						
					 
					
						2014-11-09 00:15:00 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							046f167b6e 
							
						 
					 
					
						
						
							
							Fix a bug where local dynamic array declarations could be mistakenly parsed as old decls (bug 6279).  
						
						
						
					 
					
						2014-11-09 00:12:44 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							099f299113 
							
						 
					 
					
						
						
							
							Fix trailing commas in array literals changing the result of sizeof().  
						
						
						
					 
					
						2014-11-08 23:15:23 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							4c377f21f9 
							
						 
					 
					
						
						
							
							Mark symbols as read when using sizeof().  
						
						
						
					 
					
						2014-11-08 20:45:43 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							704e9579f7 
							
						 
					 
					
						
						
							
							Fix comparisons of derived tags (bug 6239).  
						
						
						
					 
					
						2014-11-08 20:27:39 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							7609d19e32 
							
						 
					 
					
						
						
							
							Fix bug where bad carriage returns mess up line endings.  
						
						
						
					 
					
						2014-11-08 18:04:45 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							3cc5c198b4 
							
						 
					 
					
						
						
							
							Allow dynamic char arrays.  
						
						
						
					 
					
						2014-11-08 17:39:43 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							dbee1bcd08 
							
						 
					 
					
						
						
							
							Add an error check after calling doexpr2().  
						
						
						
					 
					
						2014-11-08 03:07:34 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							512cbc73a0 
							
						 
					 
					
						
						
							
							Fix a loophole with static local variables.  
						
						
						
					 
					
						2014-11-08 02:54:29 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							039572060e 
							
						 
					 
					
						
						
							
							Add new dynamic array syntax.  
						
						
						
					 
					
						2014-11-08 02:48:13 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							f08e53f5d2 
							
						 
					 
					
						
						
							
							Make sizeof on indeterminate arrays an error.  
						
						
						
					 
					
						2014-11-08 02:07:43 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							6d507ceb27 
							
						 
					 
					
						
						
							
							Add a special case for assigning a string literal to a char array.  
						
						
						
					 
					
						2014-11-08 02:04:11 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							70e095f320 
							
						 
					 
					
						
						
							
							Define post-fix arrays as determinate and pre-fix arrays as indeterminate.  
						
						
						
					 
					
						2014-11-07 22:39:00 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							a8796543af 
							
						 
					 
					
						
						
							
							Use symbols for fatal errors and bump them by 20 slots.  
						
						
						
					 
					
						2014-11-07 17:41:33 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							2c31b99ce3 
							
						 
					 
					
						
						
							
							Move is_new and has_postdims bits out of declinfo and into typeinfo.  
						
						
						
					 
					
						2014-11-07 17:05:27 -08:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							613b06f6c0 
							
						 
					 
					
						
						
							
							Improve error messages when we can't find a typeexpr on a method.  
						
						
						
					 
					
						2014-10-30 21:15:48 -07:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							97c3a2bc6e 
							
						 
					 
					
						
						
							
							Fix a crash when we fail to parse a typexpr in a global declaration.  
						
						
						
					 
					
						2014-10-30 21:09:10 -07:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							eaff5c9364 
							
						 
					 
					
						
						
							
							Allow any in new-style natives.  
						
						
						
					 
					
						2014-10-30 17:19:01 -07:00 
						 
				 
			
				
					
						
							
							
								David Anderson 
							
						 
					 
					
						
						
						
						
							
						
						
							e7fc06910b 
							
						 
					 
					
						
						
							
							Fix a crash when properties have setters but not getters.  
						
						
						
					 
					
						2014-10-29 20:51:03 -07:00