[M3commit] CVS Update: cm3

Jay Krell jkrell at elego.de
Sun Apr 27 11:59:00 CEST 2008


CVSROOT:	/usr/cvs
Changes by:	jkrell at birch.	08/04/27 11:59:00

Modified files:
	cm3/m3-libs/m3core/src/win32/: CommDlg.i3 NB30.i3 TlHelp32.i3 
	                               WinBase.i3 WinBaseTypes.i3 
	                               WinCommCtrl.i3 WinCon.i3 
	                               WinDef.i3 WinDef.m3 WinError.i3 
	                               WinGDI.i3 WinGDI.m3 
	                               WinImageList.i3 WinImageList.m3 
	                               WinIoctl.i3 WinIoctl.m3 
	                               WinListView.i3 WinListView.m3 
	                               WinMidi.i3 WinNLS.i3 WinNT.i3 
	                               WinNT.m3 WinNetwk.i3 WinReg.i3 
	                               WinSock.i3 WinSock.m3 
	                               WinTabCon.i3 WinUser.i3 
	                               WinUser.m3 WinVer.i3 

Log message:
	replace all the integer types with funny names
	with types with explicit sizes
	DWORD => UINT32
	WORD => UINT16
	USHORT => UINT16
	BYTE => UINT8
	u_int => UINT32
	u_long => UINT32
	INT => INT32
	int => INT32
	LONG => INT32
	SHORT => INT16
	UCHAR => UINT8
	etc.
	
	start replacing LPFOO with PFOO
	there is no such thing as a "long pointer" in
	many years, and never in Modula-3
	
	introduce SIZE_T, SSIZE_T
	the proposed canonical Win32 spellings of:
	UINT_PTR, ULONG_PTR, DWORD_PTR, SIZE_T
	SSIZE_T, INT_PTR, LONG_PTR
	etc.
	SIZE_T and size_t are definitely good choices
	SSIZE_T, PTRDIFF_T, and ptrdiff_t are good choices
	The difference between UINT_PTR and ULONG_PTR, for
	example, is not interesting here; in 32 bit C++, one
	is unsigned int, the other unsigned long, and the
	types are slightly different and the name mangling differnt
	(size_t is unsigned int, SIZE_T is unsigned long, DWORD
	is unsigned long, ptrdiff_t is int, SSIZE_T is long, etc.)
	
	old types left for compat
	
	The hypothetical Win16 port won't use these files.
	
	small movement toward 64 bit support 
	a few sprinklings of SIZE_T, SSIZE_T here and there
	
	Mentor and Juno startup and show ui
	Juno crashes; this seems familiar?
	
	0:003> k
	ChildEBP RetAddr  
	0596f5c0 005d59c5 ntdll!DbgBreakPoint
	0596f5d8 005cc25e m3core!RTOS__Crash+0x3a [..\src\runtime\WIN32\RTOS.m3 @ 27]
	0596f5f0 005c9fce m3core!RTProcess__Crash+0x68 [..\src\runtime\common\RTProcess.m3 @ 66]
	0596f608 005c9ce2 m3core!RTError__EndError+0x37 [..\src\runtime\common\RTError.m3 @ 118]
	0596f620 005ca583 m3core!RTError__MsgS+0x8d [..\src\runtime\common\RTError.m3 @ 40]
	0596f668 005ca321 m3core!RTException__Crash+0x1d0 [..\src\runtime\common\RTException.m3 @ 79]
	0596f6a0 005ca281 m3core!RTException__DefaultBackstop+0x6f [..\src\runtime\common\RTException.m3 @ 39]
	0596f6bc 005d7613 m3core!RTException__InvokeBackstop+0x28 [..\src\runtime\common\RTException.m3 @ 25]
	0596f6e8 005ca3ab m3core!RTException__Raise+0x63 [..\src\runtime\ex_frame\RTExFrame.m3 @ 29]
	0596f718 005ca281 m3core!RTException__DefaultBackstop+0xf9 [..\src\runtime\common\RTException.m3 @ 47]
	0596f734 005d7613 m3core!RTException__InvokeBackstop+0x28 [..\src\runtime\common\RTException.m3 @ 25]
	0596f760 005b52f9 m3core!RTException__Raise+0x63 [..\src\runtime\ex_frame\RTExFrame.m3 @ 29]
	0596f7a4 00f02a39 m3core!RTHooks__ReportFault+0x93 [..\src\runtime\common\RTHooks.m3 @ 110]
	0596f7b4 00f01c9a m3ui!MM_WinContext_CRASH+0x11 [..\src\winvbt\WinContext.m3 @ 17]
	0596f830 00f0fc3c m3ui!WinContext__PushPixmap+0x43c [..\src\winvbt\WinContext.m3 @ 167]
	0596f8f8 00f0db65 m3ui!WinPaint__PixmapCom+0x932 [..\src\winvbt\WinPaint.m3 @ 712]
	0596fd54 00f0843e m3ui!WinPaint__PaintBatch+0x225 [..\src\winvbt\WinPaint.m3 @ 51]
	0596fdbc 00f06d3d m3ui!WinTrestle__PaintBatchVBT+0x12d [..\src\winvbt\WinTrestle.m3 @ 1560]
	0596fe04 7e418734 m3ui!WinTrestle__WindowProc+0x699 [..\src\winvbt\WinTrestle.m3 @ 1149]
	0596fe30 7e418816 user32!InternalCallWinProc+0x28




More information about the M3commit mailing list