[M3commit] CVS Update: cm3

Rodney M. Bates rodney at elego.de
Tue Jul 9 02:05:38 CEST 2013


CVSROOT:	/usr/cvs
Changes by:	rodney at birch.	13/07/09 02:05:38

Modified files:
	cm3/m3-sys/m3front/src/builtinTypes/: Tag: devel_unicode 
	                                      WCharr.m3 
	./: Tag: devel_unicode WCharr.m3 
	cm3/m3-sys/m3front/src/exprs/: Tag: devel_unicode EqualExpr.m3 
	                               ExprParse.m3 TextExpr.i3 
	                               TextExpr.m3 
	./: Tag: devel_unicode EqualExpr.m3 ExprParse.m3 TextExpr.i3 
	    TextExpr.m3 
	cm3/m3-sys/m3front/src/misc/: Tag: devel_unicode M3WString.i3 
	                              M3WString.m3 Scanner.m3 
	                              TipeDesc.i3 
	./: Tag: devel_unicode M3WString.i3 M3WString.m3 Scanner.m3 
	    TipeDesc.i3 
	cm3/m3-sys/m3front/src/types/: Tag: devel_unicode Brand.m3 

Log message:
	Initial changes to compiler and libraries to make WIDECHAR big enough
	for current Unicode.
	
	Language:
	
	LAST(WIDECHAR) = 16_10FFFF
	Unicode escapes in char and text literals:
	W'\U10FFFF' = VAL ( ORD ( 16_10FFFF ) , WIDECHAR )
	Legal in nonwide literals, but value must be in range, e.g. \U0000FF.
	
	Implementation:
	
	BITSIZE(WIDECHAR) = 32
	
	These are hard-coded in the compiler (m3front, m3cc(gcc-4.7)
	
	Library changes (m3core) adapt on recompilation to the WIDECHAR range of
	the compiler used to compile them.
	
	Debugger adapts at its runtime to the WIDECHAR size of the code it is
	debugging, but everything in the link closure needs to be recompiled
	by a compiler with the same WIDECHAR size.
	
	To bootstrap:
	1) Compile m3front and m3cc with an older compiler.
	2) Compile m3core with the compiler produced by step 1)




More information about the M3commit mailing list