carl 
								
							 
						 
						
							
							
							
							
								
							
							
								e8243402be 
								
							 
						 
						
							
							
								
								Move to use C structures instead of typedef to align with other ACK compilers and to avoid forward declaration issues with include files.  
							
							
							
						 
						
							2019-05-11 01:09:03 +08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									carl 
								
							 
						 
						
							
							
							
							
								
							
							
								3867cfdaca 
								
							 
						 
						
							
							
								
								+ M2 Compiler ISO C90 compatibility  
							
							... 
							
							
							
							* Fixing of potential crash issue with function tables in compiler.
+ SYSTEM.h is now renamed to SYSTEMM2.h to avoid conflicts on non case sensitive filesystems. 
							
						 
						
							2019-03-02 01:44:16 +08:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								59b3c10563 
								
							 
						 
						
							
							
								
								Use (arith) 1 << ... when getting the sign bit.  
							
							... 
							
							
							
							This prevents an overflow reported by @hexcoder- in
https://github.com/davidgiven/ack/issues/56 
lang/cem/cpp.ansi/LLlex.c used a plain 1 << ... and caused an overflow
on machines where sizeof(int) < sizeof(long).  Using 1L << ... would
work for now but might fail later if arith became long long.
C doesn't specify whether negative integers use 2's complement or some
other format.  Therefore, (arith) 1 << ... has an undefined value.  It
should still work because the value is some integer where the sign bit
is set and all other bits are clear.
(unsigned arith) 1 << ... would also get the sign bit, but casting it
from unsigned back to signed would make the same undefined value.
(arith) -1 << ... would assume 2's complement. 
							
						 
						
							2017-10-29 17:45:10 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								038fb6fb55 
								
							 
						 
						
							
							
								
								Get correct sign of a MOD b when (a > 0) and (b < 0).  
							
							... 
							
							
							
							Reported by me in https://github.com/davidgiven/ack/issues/60 
This doesn't change DIV.  Right now a DIV b does floor division and
a MOD b has the sign of b.  This is the same as Lua, Python, Ruby,
Tcl; but is different from other Modula-2 implementations. 
							
						 
						
							2017-10-28 19:55:06 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									George Koehler 
								
							 
						 
						
							
							
							
							
								
							
							
								649410bb27 
								
							 
						 
						
							
							
								
								Always use unsigned long.  
							
							... 
							
							
							
							Traditional C compilers had long but not unsigned long.  I now assume
that everyone can compile unsigned long.  Remove macro UNSIGNED_ARITH
and act like it is always defined.  The type `unsigned arith` works
because arith is a macro for long. 
							
						 
						
							2017-10-28 17:56:20 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								fd91851005 
								
							 
						 
						
							
							
								
								Add enough return types to the K&R C that the ACK builds (on Linux) using clang  
							
							... 
							
							
							
							now. 
							
						 
						
							2016-11-10 22:04:18 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Given 
								
							 
						 
						
							
							
							
							
								
							
							
								f6c43b95ef 
								
							 
						 
						
							
							
								
								Modula-2 now works.  
							
							... 
							
							
							
							--HG--
branch : dtrg-buildsystem
rename : lang/pc/build.mk => lang/m2/build.mk
rename : lang/pc/libpc/build.mk => lang/m2/comp/build.mk
rename : lang/pc/libpc/build.mk => lang/m2/libm2/build.mk 
							
						 
						
							2013-05-14 22:24:38 +01:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								efacd02ffd 
								
							 
						 
						
							
							
								
								Added LONGCARD as a local extension  
							
							
							
						 
						
							1996-08-14 07:42:40 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								1db6a3029b 
								
							 
						 
						
							
							
								
								Header --> Id  
							
							
							
						 
						
							1994-06-24 14:02:31 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								5a53ba3f50 
								
							 
						 
						
							
							
								
								Several minor mods: simplifications and identifier name changes  
							
							
							
						 
						
							1991-03-18 16:30:49 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								852601d0b5 
								
							 
						 
						
							
							
								
								minor mods  
							
							
							
						 
						
							1991-03-14 13:16:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								86bc055fa1 
								
							 
						 
						
							
							
								
								Corrected error on NOCROSS  
							
							
							
						 
						
							1991-03-14 09:31:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								f7504dbd4b 
								
							 
						 
						
							
							
								
								Cleaned up a bit more  
							
							
							
						 
						
							1991-03-13 17:26:07 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								52842cd09a 
								
							 
						 
						
							
							
								
								Cleaned up a bit  
							
							
							
						 
						
							1991-03-13 13:49:56 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								0a517b9256 
								
							 
						 
						
							
							
								
								Changes to make node structure smaller, and cleaned up a bit  
							
							
							
						 
						
							1991-03-12 16:52:00 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								76d79cf17a 
								
							 
						 
						
							
							
								
								Added macro's for long selections  
							
							
							
						 
						
							1991-03-06 10:52:34 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								109a357e95 
								
							 
						 
						
							
							
								
								Fix: DIV and MOD on negative args  
							
							
							
						 
						
							1990-07-16 09:05:19 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								c3b3faf7a4 
								
							 
						 
						
							
							
								
								Added support for constant floating point expressions  
							
							
							
						 
						
							1989-12-19 09:40:25 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								d277946286 
								
							 
						 
						
							
							
								
								changed name of some identifiers to more accurately represent their  
							
							... 
							
							
							
							meaning, and fixed a problem with sometimes not detecting overflow in
constants 
							
						 
						
							1989-08-08 09:11:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								f9b6acf1dc 
								
							 
						 
						
							
							
								
								New version with different parameter passing mechanism and some  
							
							... 
							
							
							
							minor fixes 
							
						 
						
							1989-03-20 13:32:06 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								ce0ec1c143 
								
							 
						 
						
							
							
								
								delinted somewhat  
							
							
							
						 
						
							1988-10-13 15:43:23 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								905c5a349f 
								
							 
						 
						
							
							
								
								fix: >= and <= were wrong in constant expressions  
							
							
							
						 
						
							1988-08-05 11:22:39 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								2bbecf2416 
								
							 
						 
						
							
							
								
								better argument checking of standard functions  
							
							
							
						 
						
							1988-04-26 10:14:01 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								0976dfa3b9 
								
							 
						 
						
							
							
								
								too many changes: some cosmetic; some for 2/4; some for added options  
							
							
							
						 
						
							1988-03-21 17:06:20 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								78926a5a84 
								
							 
						 
						
							
							
								
								fix typo and parameters of overflow  
							
							
							
						 
						
							1988-03-08 10:35:53 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								ad2d61154b 
								
							 
						 
						
							
							
								
								fixed some minor problems  
							
							
							
						 
						
							1988-01-15 16:55:01 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								a61d36ff49 
								
							 
						 
						
							
							
								
								fixes and squeezing  
							
							
							
						 
						
							1987-12-02 10:41:38 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								896fec3fc5 
								
							 
						 
						
							
							
								
								version with better overflow checking  
							
							
							
						 
						
							1987-11-26 14:15:24 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								b668810351 
								
							 
						 
						
							
							
								
								sets now allowed for all subranges  
							
							
							
						 
						
							1987-10-28 16:03:56 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								688567a532 
								
							 
						 
						
							
							
								
								fix in reference counts for sets  
							
							
							
						 
						
							1987-10-20 13:32:18 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								503edee161 
								
							 
						 
						
							
							
								
								New version, with an option for strict Modula-2, and  
							
							... 
							
							
							
							warnings for unused or uninitialized variables 
							
						 
						
							1987-10-19 11:28:37 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								fd817d4dbc 
								
							 
						 
						
							
							
								
								Minor adaptions in order to reduce the size  
							
							
							
						 
						
							1987-09-23 16:39:43 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								0e397f09f3 
								
							 
						 
						
							
							
								
								many changes; some cosmetic; coercions now explicit in tree  
							
							
							
						 
						
							1987-07-30 13:37:39 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								6614384f3c 
								
							 
						 
						
							
							
								
								fixes, changes to make smaller on PDP  
							
							
							
						 
						
							1987-07-21 13:54:33 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								746f94368d 
								
							 
						 
						
							
							
								
								fixes, added 's' option  
							
							
							
						 
						
							1987-06-23 17:12:25 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								c839c01680 
								
							 
						 
						
							
							
								
								some fixes, and changed priority of unary minus  
							
							
							
						 
						
							1987-06-18 15:46:08 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								bb9b16ab50 
								
							 
						 
						
							
							
								
								fixes, added some standard functions to handle LONGREAL, LONGINT  
							
							
							
						 
						
							1987-05-27 10:16:03 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								ed2d6ab75b 
								
							 
						 
						
							
							
								
								some changes to make smaller  
							
							
							
						 
						
							1987-05-21 09:37:28 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								6fc7d0f866 
								
							 
						 
						
							
							
								
								bug fix in constant set computations  
							
							
							
						 
						
							1987-05-13 13:04:28 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								48acbe27bb 
								
							 
						 
						
							
							
								
								fixed a minor bug in cstoper.c: computation of mach_long_sign was wrong  
							
							
							
						 
						
							1987-05-12 11:15:55 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								fbc0415761 
								
							 
						 
						
							
							
								
								make to work on sun, added copyright, etc  
							
							
							
						 
						
							1987-04-29 10:22:07 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								a0c21bf820 
								
							 
						 
						
							
							
								
								many bug fixes, and added flexibility in alignments  
							
							
							
						 
						
							1986-11-28 11:59:08 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								9d0ee46068 
								
							 
						 
						
							
							
								
								Trying to check more of an expression, giving some more sophisticated error messages,and be less wasteful with space for subranges  
							
							
							
						 
						
							1986-11-17 11:41:28 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								9291d87dab 
								
							 
						 
						
							
							
								
								Several bug fixes  
							
							
							
						 
						
							1986-11-05 14:33:00 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								3030eb8cae 
								
							 
						 
						
							
							
								
								newer version  
							
							
							
						 
						
							1986-10-06 20:36:30 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								a0db745586 
								
							 
						 
						
							
							
								
								newer version with bug fixes  
							
							
							
						 
						
							1986-08-26 14:33:24 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								d5a95fcac0 
								
							 
						 
						
							
							
								
								Some bug fixes  
							
							
							
						 
						
							1986-07-14 15:00:08 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								965e75761d 
								
							 
						 
						
							
							
								
								newer version  
							
							
							
						 
						
							1986-07-08 14:59:02 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								bcfca75b56 
								
							 
						 
						
							
							
								
								newer version  
							
							
							
						 
						
							1986-06-26 09:39:36 +00:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									ceriel 
								
							 
						 
						
							
							
							
							
								
							
							
								ec528b797e 
								
							 
						 
						
							
							
								
								newer version  
							
							
							
						 
						
							1986-06-10 13:18:52 +00:00