From rodney at elego.de Thu Aug 1 00:11:01 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:11:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731221101.D3E075DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:11:01 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode BuiltinSpecials.m3 Log message: Was hitting a compiler limit on 32-bit machine and 32-bit WIDECHAR From rodney at elego.de Thu Aug 1 00:11:22 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:11:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731221122.45D095366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:11:22 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode BuiltinSpecials2.m3 Log message: Was hitting a compiler limit on 32-bit machine and 32-bit WIDECHAR From rodney at elego.de Thu Aug 1 00:29:17 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:29:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731222917.26ED55366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:29:17 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.m3 ./: Tag: devel_unicode ConvertPacking.m3 cm3/m3-libs/m3core/src/runtime/common/: Tag: devel_unicode RTTipe.i3 RTTipe.m3 Log message: Comment widely scattered places affected by ersatz method of denoting WIDECHAR by as an enumeration rather than its own kind. From rodney at elego.de Thu Aug 1 00:32:06 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:32:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731223206.0A4C25366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:32:06 Modified files: cm3/m3-sys/m3front/src/builtinTypes/: Tag: devel_unicode WCharr.m3 ./: Tag: devel_unicode WCharr.m3 cm3/m3-sys/m3front/src/misc/: Tag: devel_unicode TipeDesc.i3 Log message: Comment widely scattered places affected by ersatz method of denoting WIDECHAR by as an enumeration rather than its own kind. From rodney at elego.de Thu Aug 1 01:08:51 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 1:08:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731230851.3DB005DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 01:08:51 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 PickleStubs.m3 Log message: Better handling of out-of-range WIDECHAR values From rodney at elego.de Thu Aug 1 06:54:35 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 6:54:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130801045435.34CEE9C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 06:54:35 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Log message: Editorial comments about excessive information hiding From rodney at elego.de Fri Aug 2 01:15:53 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 2 Aug 2013 1:15:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130801231553.B902B9C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/02 01:15:53 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Pickle2.i3 Pickle2.m3 Log message: Partial implementation for writing backwards-compatible pickles. From rodney at elego.de Sat Aug 3 00:25:54 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 3 Aug 2013 0:25:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130802222554.816175DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/03 00:25:54 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode Pickle2.m3 Log message: An almost solution to the problem of TextLiteral.T's having MaxBytes dependent on word size, making pickling of TextLiteral.T fail across different word sizes. Hard code the fingerprint for the 64-bit case and translate it to the one for 32-bit systems, in pickles. Also vice-versa. The best long-term solution also involves making TextLiteral.MaxBytes word-size-independent. This could invalidate some preexisting pickles, but only if they contain heap objects with a field or element with declared static type TextLiteral.T, which seems quite unlikely. If such fields/methods are declared as TEXT, the actual allocated type of their referents can be TextLiteral.T and all will work. From rodney at elego.de Sat Aug 3 20:00:28 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 3 Aug 2013 20:00:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130803180028.1D1B09C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/03 20:00:28 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode PickleStubs.m3 Log message: Byte-swap rework in InWideChars From rodney at elego.de Fri Aug 9 17:34:07 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 9 Aug 2013 17:34:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130809153407.4F5CD5DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/09 17:34:07 Modified files: cm3/m3-sys/cm3/src/: Tag: devel_unicode cm3.1 Log message: WIDECHAR, gstabs+, typos. From rodney at elego.de Fri Aug 9 17:53:57 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 9 Aug 2013 17:53:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130809155357.AA0245DEB87@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/09 17:53:57 Modified files: cm3/m3-libs/libm3/src/rw/: Tag: devel_unicode Rd.m3 UnsafeRd.i3 Log message: Compatability: Restore FastUnGetChar as a wrapper for FastUnGetCharMulti. From rodney at elego.de Sat Aug 10 19:05:02 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 10 Aug 2013 19:05:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130810170502.B23D49D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/10 19:05:02 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Pickle2.m3 Log message: Some refactoring for a simpler and more general circumvention of too much information hiding. Also, fingerprint renames to reflect that they now relate to more than just pm3/cm3 differences . From rodney at elego.de Sun Aug 11 00:15:44 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 11 Aug 2013 0:15:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130810221544.CD67B5DEB87@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/11 00:15:44 Modified files: cm3/m3-libs/sysutils/src/: Tag: devel_unicode FastLex.m3 Log message: Short-circuit new nd-nothing wrapper. From jkrell at elego.de Mon Aug 12 07:35:12 2013 From: jkrell at elego.de (Jay Krell) Date: Mon, 12 Aug 2013 7:35:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130812053512.C6874A36177@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/12 07:35:12 Modified files: cm3/m3-sys/m3cc/: .cvsignore Log message: update .cvsignore, more to come From rodney at elego.de Tue Aug 13 03:16:04 2013 From: rodney at elego.de (Rodney M. Bates) Date: Tue, 13 Aug 2013 3:16:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813011604.413B05DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/13 03:16:04 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 PickleStubs.i3 PickleStubs.m3 Log message: Move surrogate-tolerant [en|de]coders for better accessiblity to network objects and other things. From rodney at elego.de Wed Aug 14 01:49:53 2013 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 14 Aug 2013 1:49:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813234953.A42BA5DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/14 01:49:53 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode PickleStubs.m3 Log message: Comments. From rodney at elego.de Wed Aug 14 01:51:10 2013 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 14 Aug 2013 1:51:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813235110.E0E835DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/14 01:51:10 Modified files: cm3/m3-comm/netobj/src/netobjrt/: Tag: devel_unicode StubLib.m3 Log message: Initial mods to netobj for 32-bit WIDECHAR. From rodney at elego.de Fri Aug 16 23:15:14 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:15:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816211514.7B84D9F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:15:14 Modified files: cm3/m3-comm/netobj/tests/fd/src/: m3makefile ./: m3makefile cm3/m3-comm/netobj/tests/fd1/src/: m3makefile ./: m3makefile cm3/m3-comm/netobj/tests/perf/src/: m3makefile Log message: A lingering SRC-ism was preventing compilation. From rodney at elego.de Fri Aug 16 23:19:15 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:19:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816211915.471559F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:19:15 Modified files: cm3/m3-comm/netobj/tests/perf/src/: Tag: devel_unicode NetObjTest.m3 m3makefile Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:21:08 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:21:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212109.144139F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:21:08 Modified files: cm3/m3-comm/netobj/tests/luca/src/: Tag: devel_unicode LucaTest.m3 Log message: Add explanation of command line param. From rodney at elego.de Fri Aug 16 23:22:11 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:22:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212211.D94B85DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:22:11 Modified files: cm3/m3-comm/netobj/tests/longcall/src/: Tag: devel_unicode LongCallTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:23:39 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:23:39 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212339.711765DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:23:39 Modified files: cm3/m3-comm/netobj/tests/fd/src/: Tag: devel_unicode m3makefile ./: Tag: devel_unicode m3makefile cm3/m3-comm/netobj/tests/fd1/src/: Tag: devel_unicode m3makefile Log message: A lingering SRC-ism was preventing compilation. From rodney at elego.de Fri Aug 16 23:28:41 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:28:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212842.62D4A9F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:28:41 Modified files: cm3/m3-comm/netobj/tests/perf/src/: NetObjTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:30:32 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:30:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816213032.1F4D89F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:30:32 Modified files: cm3/m3-comm/netobj/tests/longcall/src/: LongCallTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Sat Aug 17 00:00:04 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 17 Aug 2013 0:00:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816220004.7A2415DEB85@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/17 00:00:04 Modified files: cm3/m3-comm/netobj/tests/luca/src/: LucaTest.m3 Log message: Add explanation of pathname command-line parameter. From rodney at elego.de Mon Aug 19 01:26:54 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 1:26:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130818232654.C95BA5DE10C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 01:26:54 Modified files: cm3/m3-libs/m3core/src/text/: Tag: devel_unicode TextLiteral.i3 Log message: Comments: make them WIDECHAR-size-independent. From rodney at elego.de Mon Aug 19 04:13:25 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:13:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021325.921615DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:13:25 Modified files: cm3/m3-comm/netobj/src/netobjrt/: Tag: devel_unicode AtomPkl.i3 ListPkl.i3 Log message: Comments. From rodney at elego.de Mon Aug 19 04:17:18 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:17:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021718.2312D5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:17:18 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode Pickle.m3 Log message: Fix a long-standing bug that causes runaway memory allocation when unpickling strings with WIDECHARs on 64-bit machines, using version 1 pickles. From rodney at elego.de Mon Aug 19 04:19:11 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:19:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021911.898A75DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:19:11 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode BuiltinSpecials.m3 Log message: Make version 1 pickles work on WIDECHARs of either 16- or 32-bit size. From rcoleburn at elego.de Sun Aug 25 22:52:28 2013 From: rcoleburn at elego.de (Randy Coleburn) Date: Sun, 25 Aug 2013 22:52:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130825205228.5F7DC5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 13/08/25 22:52:28 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: SocketWin32.m3 Log message: Resolve compilation error at line 59, by importing WinDef for use with WinDef.BOOL. Seeing as how this code had an obvious compilation error, that means no one has tested it before committing the last round of changes to the repository. Therefore, suggest folks consider this revised module as potentially buggy until proved out. --Randy Coleburn From rodney at elego.de Mon Aug 26 02:06:13 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:06:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826000613.1CFAF9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:06:13 Added files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: devel_unicode m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of Unicode-sized WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:11:22 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:11:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826001122.15F4A9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:11:22 Added files: cm3/m3-libs/libm3/tests/pickle/src/: m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of 16-bit WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:17:12 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:17:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826001712.3D34D9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:17:12 Added files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: release_branch_cm3_5_8 m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of 16-bit WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:25:25 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:25:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826002525.7486C9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:25:25 Modified files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: devel_unicode PickleTestWideChar.m3 Log message: uncomment things that only work with Unicode-sized WIDECHAR and recent libraries. From rodney at elego.de Mon Aug 26 02:27:58 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:27:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826002758.892709C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:27:58 Modified files: cm3/m3-libs/libm3/tests/pickle/src/: PickleTestWideChar.m3 Log message: Uncomment TextClass.Flatten call, which only exists in head and unicode branch. From jkrell at elego.de Tue Aug 27 09:25:19 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 9:25:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827072519.28357A36132@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 09:25:19 Modified files: cm3/scripts/python/: pylib.py Log message: fix /dev/null on Windows, allow for newer Visual C++ toolset From jkrell at elego.de Tue Aug 27 10:22:00 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 10:22:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827082200.BAC909BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 10:22:00 Modified files: cm3/m3-sys/cm3/src/: m3makefile Utils.i3 UtilsWin32.m3 Log message: restore workaround to bootstrap from 5.8.5 From jkrell at elego.de Tue Aug 27 11:03:45 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 11:03:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827090345.C206E9BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 11:03:45 Modified files: cm3/m3-sys/mklib/src/: Main.m3 Log message: ignore sse2 floating point constants from newer compilers -- they start '__xmm@' but by the time they get here they are merely '_xmm' From jkrell at elego.de Tue Aug 27 16:56:10 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 16:56:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827145610.5CEE19BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 16:56:10 Added files: cm3/m3-sys/cm3/src/: cm3unix.c Log message: workaround to bootstrap from slightly older builds From jkrell at elego.de Tue Aug 27 17:23:30 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 17:23:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827152330.B5A6B9BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 17:23:30 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: FSWin32.m3 Log message: go back a version to fix heap corruption From jkrell at elego.de Tue Aug 27 18:08:29 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 18:08:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827160829.828399BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 18:08:29 Modified files: cm3/m3-libs/libm3/src/uid/WIN32/: MachineID.c Log message: older cm3 config files do not link with iphlpapi.lib so use LoadLibrary/GetProcAddress From jkrell at elego.de Wed Aug 28 09:09:09 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:09:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828070909.424CF9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:09:09 Modified files: cm3/m3-sys/m3back/src/: M3C.m3 Log message: win64: go back to "m" for "minus" or "negative" instead of "-" in typeids. I'm not sure why but it doesn't likely matter. These are just opaque strings formed from 32bit integers. win64: replace \ with / in source files in set_source_file Otherwise we get errors about unknown escape sequences win64: handle immediately recursive pointer types like: TYPE PFOO = UNTRACED REF PFOO. These are typos actually in m3core\src\win32. They are supposed to be TYPE Foo = RECORD ... END; TYPE PFOO = UNTRACED REF PFOO. I special case pointer types that point to self and just make them void*. Actually should make them ADDRESS (i.e. char*, valid K&R). With this we make very significant progress compiling m3core for AMD64_NT. There are just a few problems because INTEGER/CARDINAL is used incorrectly in the code, and the suffixes aren't being computed correctly either, so nothing is up to date and we link the wrong .obj files. From jkrell at elego.de Wed Aug 28 09:13:43 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:13:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828071344.083259D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:13:43 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: NT.common Log message: in support of the C backend, use -Fo to set the output file of C/C++ compilation From jkrell at elego.de Wed Aug 28 09:32:42 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:32:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828073242.837FB9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:32:42 Added files: cm3/m3-libs/m3core/src/Csupport/Common/: lround-readme.txt s_lroundl.c s_llroundl.c Log message: initial copies from OpenBSD From jkrell at elego.de Wed Aug 28 09:44:48 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:44:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828074448.3AC089D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:44:48 Added files: cm3/m3-libs/m3core/src/Csupport/Common/: s_lround.c Log message: initial copies from OpenBSD From jkrell at elego.de Wed Aug 28 09:58:16 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:58:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828075816.A00679D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:58:16 Modified files: cm3/m3-sys/m3back/src/: M3C.m3 Log message: win64: temporary workaround: truncate instead of round From jkrell at elego.de Wed Aug 28 10:08:07 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 10:08:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828080807.3F19F9BA00A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 10:08:07 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: AMD64_NT: set correct jmpbuf size: 32 int64s AMD64_NT: set setjmp to be "setjmp" and not "_setjmp" (got link error on m3core otherwise) From jkrell at elego.de Wed Aug 28 10:27:05 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 10:27:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828082705.EA7689BA00A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 10:27:05 Added files: cm3/m3-libs/m3core/src/C/AMD64_NT/: Csetjmp.i3 m3makefile Log message: "longjmp" instead of common "_longjmp" From jkrell at elego.de Wed Aug 28 11:13:27 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 11:13:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828091328.021BA9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 11:13:27 Modified files: cm3/scripts/python/: pylib.py Log message: work in progress..just Makefile tweaks..I'm now able to link AMD64_NT cm3.exe, I might have hand tweaked the final compile/link instead of using the exact Makefile produced here From jkrell at elego.de Thu Aug 29 09:20:19 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:20:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829072019.26D7A9D62B8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:20:19 Modified files: cm3/m3-libs/m3core/src/win32/: WinGDI.i3 Log message: Win64: INT32 = 16_FFFFFFFF => -1 so it compiles, 16_FFFFFFFF is out of range. Seems a little fishy? From jkrell at elego.de Thu Aug 29 09:30:43 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:30:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829073043.66FA99D62B8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:30:43 Modified files: cm3/m3-libs/m3core/src/time/WIN32/: TimeWin32.m3 Log message: Win64: LAST(INTEGER) => LAST_INTEGER32 = 16_7FFFFFFF (right?) and use LAST_INTEGER32 instead. That is what was intended here. Pending testing, replace this messy Modula-3 with the short clean C code already neighboring. Really, the Modula-3 is doing some math gymnastics that I can't decipher but surely is meant to be equivalent to the C code, modulo possibly rounding. The Modula-3 Win32 code is somewhat rife with the questionable assumption that INTEGER is 32 bits. Really, that isn't terrible, but we probably more code that assumes INTEGER can hold pointers, so we will go with that. From jkrell at elego.de Thu Aug 29 09:37:22 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:37:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829073722.2521D9D62B7@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:37:22 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3 Log message: Win64: LAST(CARDINAL) => LAST_CARDINAL32 = 16_7FFFFFFF and use that instead. That is what was intended, as this is changing a wait over some Modula-3 time unit into a Win32 wait in 32bit milliseconds, and the Modula-3 code is going to loop if the value doesn't fit. Really, it should probably be using 16_FFFFFFFE but is probably too challenging. (16_FFFFFFFF is a special value: "INFINITE"), 16_FFFFFFFE is the largest non-infinite value. If 32bit LAST(CARDINAL) is really 16_FFFFFFFF then this fix is incorrect. But as I recall CARDINAL is 0..LAST(INTEGER) -- 31 bit half range. It's too bad really to waste the extra bit. From jkrell at elego.de Fri Aug 30 04:45:06 2013 From: jkrell at elego.de (Jay Krell) Date: Fri, 30 Aug 2013 4:45:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130830024506.638E79C600A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/30 04:45:06 Modified files: cm3/scripts/python/: targets.txt Log message: add AMD64_NT From jkrell at elego.de Fri Aug 30 08:00:05 2013 From: jkrell at elego.de (Jay Krell) Date: Fri, 30 Aug 2013 8:00:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130830060005.3ABDEA361B5@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/30 08:00:05 Modified files: cm3/m3-libs/m3core/src/win32/: WinNT.i3 Log message: Win64: MEMORY_BASIC_INFO.RegionSize UINT32 => SIZE_T Otherwise we fail an assertion at startup -- yes, we get that far. Todo: Stop cloning headers and write C instead.. From jkrell at elego.de Sat Aug 31 04:30:58 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 4:30:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831023058.C43929D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 04:30:58 Modified files: cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 Log message: clear executable flag, no diff otherwise From jkrell at elego.de Sat Aug 31 05:15:13 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:15:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831031513.5502D9D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:15:13 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile ./: m3makefile cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile Added files: cm3/m3-libs/m3core/src/C/Common/: CsetjmpC.c ./: CsetjmpC.c Removed files: cm3/m3-libs/m3core/src/C/AMD64_NT/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_CYGWIN/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_MINGW/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_NT/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/NT386/: Csetjmp.i3 m3makefile Log message: Wrap longjmp/_longjmp in Csetjmp__ulongjmp instead of header cloning. A reasonable alternative here would have been to have POSIX/Csetjmp.i3 and WIN32/Csetjmp.i3. Not clear where Cygwin lies here, it looks like they provide both and they are equivalent. From jkrell at elego.de Sat Aug 31 05:17:14 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:17:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831031714.D9DAC9D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:17:14 Modified files: cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 Log message: clear executable flag again, my editor put it back From jkrell at elego.de Sat Aug 31 05:24:45 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:24:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831032445.799269D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:24:45 Modified files: cm3/m3-libs/m3core/src/Csupport/libgcc/: libgcc.c Log message: fix for OpenVMS C++ (instead of C, see m3core.h) From jkrell at elego.de Sat Aug 31 05:49:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:49:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831034928.089D15DE10C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:49:25 Modified files: cm3/scripts/python/: pylib.py Log message: For a significant speedup, pass all the C files to the compiler at once. For NT/boot/c. Collateral change/damage: Muse use .obj instead of .o, as /Fo can either specify output file for one input or output directory for multiple inputs. When specifying output directory, the output file is implied foo.c => foo.obj. Also, all outputs must go to same directory, ok. We use "." or "./", the "/" meaning "directory". Some cleanup: foo = [a,b][c] instead of foo = a if c: foo = b and such From jkrell at elego.de Sat Aug 31 05:54:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:54:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831035425.464205DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:54:25 Modified files: cm3/scripts/python/: pylib.py Log message: oops -- missing colons From jkrell at elego.de Sat Aug 31 06:03:33 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:03:33 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831040333.E1C305DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:03:33 Modified files: cm3/m3-libs/m3core/src/win32/: WinGDI.i3 WinReg.i3 Log message: fix incorrect cloned headers PFOO = UNTRACED REF PFOO was meant to be PFOO = UNTRACED REF FOO (also LPFOO) Caught by bug in C backend that recursed forever on such things (fixed there to make them just void*/ADDRESS) I suggest we radically trim these cloned headers and interface with C be done otherwise.. Win32 is thankfully though free of many structs and instead deals a lot with pointers. Still, this entire directory is suspect. From jkrell at elego.de Sat Aug 31 06:11:24 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:11:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831041124.CECD19BA01B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:11:24 Modified files: cm3/m3-sys/m3middle/src/: M3CG_MultiPass.i3 M3CG_MultiPass.m3 ./: M3CG_MultiPass.i3 M3CG_MultiPass.m3 cm3/m3-sys/m3back/src/: M3C.m3 Log message: Support NULL type. It occurs in approx one place: elego/graphicutils/src/RsrcFilter.m3 In the generate C, it called "M3_NULL_T". work in progress, not to be completed particularly soon: The goal here is to make the C backend independent of the flag in m3front that guides the order of nested function output. Part of the strategy is to give M3CG.Replay a range to replay. i.e. from begin_procedure to end_procedure. Instead, for now, the C backend has a requirement on the m3front flags. That is ok. The NT/x86 backend has a similar requirement. From jkrell at elego.de Sat Aug 31 06:30:23 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:30:23 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831043023.768B59D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:30:23 Modified files: cm3/scripts/python/: pylib.py Log message: case insensitivity for targets on command line to Python scripts From jkrell at elego.de Sat Aug 31 06:38:44 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:38:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831043844.4EA805DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:38:44 Modified files: cm3/m3-sys/m3middle/src/: TWord.i3 Log message: IMPORT TInt From jkrell at elego.de Sat Aug 31 06:40:56 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:40:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831044056.A82D05DEB78@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:40:56 Modified files: cm3/m3-libs/m3core/src/: m3core.h Log message: remove PVOID to avoid benign re-typedef warning From jkrell at elego.de Sat Aug 31 08:18:42 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:18:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831061842.5E0A15DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:18:42 Modified files: cm3/m3-libs/m3core/src/win32/: WinUser.i3 WinVer.i3 Log message: put constants in range to quash warnings From jkrell at elego.de Sat Aug 31 08:53:05 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:53:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831065305.92A4B5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:53:05 Modified files: cm3/m3-libs/m3core/src/win32/: WinBase.i3 Log message: change negative constants from UINT32 to INT32 to fix warning that they aren't in range From jkrell at elego.de Sat Aug 31 08:55:00 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:55:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831065500.91B7D5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:55:00 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: Expose types, constants, and "pure" helpers to all targets. Note that WinUser.m3 is a mix of "pure" helpers and linkage to underlying .dlls. It could be split up to expose the helpers on all targets. We were already doing this for some of the interfaces. From jkrell at elego.de Sat Aug 31 09:10:57 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:10:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831071057.9A7765DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:10:57 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile ./: m3makefile Added files: cm3/m3-libs/m3core/src/C/WIN64/: BasicCtypes.i3 m3makefile Log message: aha, subtle but super super super important This is NOT the same as 32bits or 64bits, due to the delegation to Word.T. From jkrell at elego.de Sat Aug 31 09:14:44 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:14:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831071444.877915DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:14:44 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: go back a version, I didn't checkin the copy I intended From jkrell at elego.de Sat Aug 31 09:26:11 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:26:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831072611.B022C5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:26:11 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: Try this again: expose types/constants to all platforms. And some of the helpers. They can be slightly useful, like to manipulate Win32 .dlls, Win32 .bmps, etc. What I was really after was seeing what platforms computed for type sizes, and when AMD64_DARWIN was correct and AMD64_NT incorrect, I looked deeper. But anyway, it is ok to expose the types to all targets. From jkrell at elego.de Sat Aug 31 09:56:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:56:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831075625.B3BCC5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:56:25 Modified files: cm3/scripts/python/: pylib.py Log message: complete the batching work for much faster NT bootstrapping -- double colons and .obj instead of .o From jkrell at elego.de Sat Aug 31 10:59:45 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 10:59:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831085945.16B395DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 10:59:45 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile Log message: arg! WORD_BITS is a string: "64BITS", not the sensible number: 64.. and it falls apart a bit from there.. From jkrell at elego.de Sat Aug 31 18:05:54 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 18:05:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831160554.D4ADA5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 18:05:54 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32C.c Log message: ThreadWin32__GetStackBounds in C, consider using From jkrell at elego.de Sat Aug 31 19:36:08 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 19:36:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831173609.0178F5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 19:36:08 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: Add comment that AMD64_NT jmpbuf is 256 bytes with 16 byte alignment. From jkrell at elego.de Sat Aug 31 19:38:11 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 19:38:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831173811.8D6A25DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 19:38:11 Modified files: cm3/m3-sys/m3middle/src/: M3RT.m3 ./: M3RT.m3 cm3/m3-sys/m3front/src/misc/: Marker.m3 Log message: raise jmpbuf alignment from always 64 to always 128 alternatives: - make it per-target - make it per-target but default to either 64 or address.Size * 2 - make it address.Size * 2 Anything other than per-target is a bit wasteful. Hopefully this will go away soon anyway in favor of alloca (the code is in m3front, but disabled) From jkrell at elego.de Sat Aug 31 20:26:09 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:26:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831182609.7B70853672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:26:09 Modified files: cm3/m3-libs/m3core/src/C/WIN64/: BasicCtypes.i3 Log message: remove unused import word From jkrell at elego.de Sat Aug 31 20:28:43 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:28:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831182843.60E5F53672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:28:43 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadContext.i3 Log message: win64 hack: change ebp from DWORD to SIZE_T This change can stand indefinitely. The right fix is that this file actually needs per-target work, and does does its client the stack walker. Or much better yet, use the CaptureStackBackTrace and/or C. From jkrell at elego.de Sat Aug 31 20:30:43 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:30:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831183043.93A3753672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:30:43 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: WinTabCon, WinListView fail to compile for Win64 so remove them there This needs more work.. From jkrell at elego.de Sat Aug 31 20:32:52 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:32:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831183252.9D42C5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:32:52 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: ProcessWin32.m3 ./: ProcessWin32.m3 cm3/m3-libs/m3core/src/win32/: WinBase.i3 Log message: change GetStdHandle, SetStdHandle, GetFileHandle from taking DWORD/UINT32 to INT32. The usual constants used here are negative. Perhaps the right fix though is to state them as large positive. Or write C wrappers and remove the dependency on cloned headers. Now cm3 gets as far as not finding cm3.cfg, which is expected. ! From jkrell at elego.de Sat Aug 31 21:08:03 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:08:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831190803.522615DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:08:03 Modified files: cm3/scripts/python/: pylib.py Log message: c/nt Makefile: \r\n instead of \n c/nt Makefile: .exe on target (we are producing cm3.exe anyway) c/nt Makefile: output .pdb (tested a different approach, but we'll see) AMD64_NT: temporary hack to use libcmt.lib instead of msvcrt.lib Some problem with exception handling and alignment, wierd From jkrell at elego.de Sat Aug 31 21:15:59 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:15:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831191559.BC4625DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:15:59 Added files: cm3/scripts/python/: boot2.cmd Log message: like boot2.sh, thin wrapper over Python scripts From jkrell at elego.de Sat Aug 31 21:17:20 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:17:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831191720.B29005DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:17:20 Modified files: cm3/scripts/python/: boot2.cmd Log message: skip gcc From jkrell at elego.de Sat Aug 31 21:24:35 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:24:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831192435.C73B35DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:24:35 Modified files: cm3/scripts/python/: pylib.py Log message: clenaup e.g. use , and need /debug to get pdb out From rodney at elego.de Thu Aug 1 00:11:01 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:11:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731221101.D3E075DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:11:01 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode BuiltinSpecials.m3 Log message: Was hitting a compiler limit on 32-bit machine and 32-bit WIDECHAR From rodney at elego.de Thu Aug 1 00:11:22 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:11:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731221122.45D095366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:11:22 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode BuiltinSpecials2.m3 Log message: Was hitting a compiler limit on 32-bit machine and 32-bit WIDECHAR From rodney at elego.de Thu Aug 1 00:29:17 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:29:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731222917.26ED55366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:29:17 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.m3 ./: Tag: devel_unicode ConvertPacking.m3 cm3/m3-libs/m3core/src/runtime/common/: Tag: devel_unicode RTTipe.i3 RTTipe.m3 Log message: Comment widely scattered places affected by ersatz method of denoting WIDECHAR by as an enumeration rather than its own kind. From rodney at elego.de Thu Aug 1 00:32:06 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:32:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731223206.0A4C25366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:32:06 Modified files: cm3/m3-sys/m3front/src/builtinTypes/: Tag: devel_unicode WCharr.m3 ./: Tag: devel_unicode WCharr.m3 cm3/m3-sys/m3front/src/misc/: Tag: devel_unicode TipeDesc.i3 Log message: Comment widely scattered places affected by ersatz method of denoting WIDECHAR by as an enumeration rather than its own kind. From rodney at elego.de Thu Aug 1 01:08:51 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 1:08:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731230851.3DB005DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 01:08:51 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 PickleStubs.m3 Log message: Better handling of out-of-range WIDECHAR values From rodney at elego.de Thu Aug 1 06:54:35 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 6:54:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130801045435.34CEE9C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 06:54:35 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Log message: Editorial comments about excessive information hiding From rodney at elego.de Fri Aug 2 01:15:53 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 2 Aug 2013 1:15:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130801231553.B902B9C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/02 01:15:53 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Pickle2.i3 Pickle2.m3 Log message: Partial implementation for writing backwards-compatible pickles. From rodney at elego.de Sat Aug 3 00:25:54 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 3 Aug 2013 0:25:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130802222554.816175DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/03 00:25:54 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode Pickle2.m3 Log message: An almost solution to the problem of TextLiteral.T's having MaxBytes dependent on word size, making pickling of TextLiteral.T fail across different word sizes. Hard code the fingerprint for the 64-bit case and translate it to the one for 32-bit systems, in pickles. Also vice-versa. The best long-term solution also involves making TextLiteral.MaxBytes word-size-independent. This could invalidate some preexisting pickles, but only if they contain heap objects with a field or element with declared static type TextLiteral.T, which seems quite unlikely. If such fields/methods are declared as TEXT, the actual allocated type of their referents can be TextLiteral.T and all will work. From rodney at elego.de Sat Aug 3 20:00:28 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 3 Aug 2013 20:00:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130803180028.1D1B09C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/03 20:00:28 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode PickleStubs.m3 Log message: Byte-swap rework in InWideChars From rodney at elego.de Fri Aug 9 17:34:07 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 9 Aug 2013 17:34:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130809153407.4F5CD5DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/09 17:34:07 Modified files: cm3/m3-sys/cm3/src/: Tag: devel_unicode cm3.1 Log message: WIDECHAR, gstabs+, typos. From rodney at elego.de Fri Aug 9 17:53:57 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 9 Aug 2013 17:53:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130809155357.AA0245DEB87@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/09 17:53:57 Modified files: cm3/m3-libs/libm3/src/rw/: Tag: devel_unicode Rd.m3 UnsafeRd.i3 Log message: Compatability: Restore FastUnGetChar as a wrapper for FastUnGetCharMulti. From rodney at elego.de Sat Aug 10 19:05:02 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 10 Aug 2013 19:05:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130810170502.B23D49D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/10 19:05:02 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Pickle2.m3 Log message: Some refactoring for a simpler and more general circumvention of too much information hiding. Also, fingerprint renames to reflect that they now relate to more than just pm3/cm3 differences . From rodney at elego.de Sun Aug 11 00:15:44 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 11 Aug 2013 0:15:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130810221544.CD67B5DEB87@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/11 00:15:44 Modified files: cm3/m3-libs/sysutils/src/: Tag: devel_unicode FastLex.m3 Log message: Short-circuit new nd-nothing wrapper. From jkrell at elego.de Mon Aug 12 07:35:12 2013 From: jkrell at elego.de (Jay Krell) Date: Mon, 12 Aug 2013 7:35:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130812053512.C6874A36177@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/12 07:35:12 Modified files: cm3/m3-sys/m3cc/: .cvsignore Log message: update .cvsignore, more to come From rodney at elego.de Tue Aug 13 03:16:04 2013 From: rodney at elego.de (Rodney M. Bates) Date: Tue, 13 Aug 2013 3:16:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813011604.413B05DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/13 03:16:04 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 PickleStubs.i3 PickleStubs.m3 Log message: Move surrogate-tolerant [en|de]coders for better accessiblity to network objects and other things. From rodney at elego.de Wed Aug 14 01:49:53 2013 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 14 Aug 2013 1:49:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813234953.A42BA5DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/14 01:49:53 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode PickleStubs.m3 Log message: Comments. From rodney at elego.de Wed Aug 14 01:51:10 2013 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 14 Aug 2013 1:51:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813235110.E0E835DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/14 01:51:10 Modified files: cm3/m3-comm/netobj/src/netobjrt/: Tag: devel_unicode StubLib.m3 Log message: Initial mods to netobj for 32-bit WIDECHAR. From rodney at elego.de Fri Aug 16 23:15:14 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:15:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816211514.7B84D9F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:15:14 Modified files: cm3/m3-comm/netobj/tests/fd/src/: m3makefile ./: m3makefile cm3/m3-comm/netobj/tests/fd1/src/: m3makefile ./: m3makefile cm3/m3-comm/netobj/tests/perf/src/: m3makefile Log message: A lingering SRC-ism was preventing compilation. From rodney at elego.de Fri Aug 16 23:19:15 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:19:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816211915.471559F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:19:15 Modified files: cm3/m3-comm/netobj/tests/perf/src/: Tag: devel_unicode NetObjTest.m3 m3makefile Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:21:08 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:21:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212109.144139F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:21:08 Modified files: cm3/m3-comm/netobj/tests/luca/src/: Tag: devel_unicode LucaTest.m3 Log message: Add explanation of command line param. From rodney at elego.de Fri Aug 16 23:22:11 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:22:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212211.D94B85DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:22:11 Modified files: cm3/m3-comm/netobj/tests/longcall/src/: Tag: devel_unicode LongCallTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:23:39 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:23:39 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212339.711765DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:23:39 Modified files: cm3/m3-comm/netobj/tests/fd/src/: Tag: devel_unicode m3makefile ./: Tag: devel_unicode m3makefile cm3/m3-comm/netobj/tests/fd1/src/: Tag: devel_unicode m3makefile Log message: A lingering SRC-ism was preventing compilation. From rodney at elego.de Fri Aug 16 23:28:41 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:28:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212842.62D4A9F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:28:41 Modified files: cm3/m3-comm/netobj/tests/perf/src/: NetObjTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:30:32 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:30:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816213032.1F4D89F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:30:32 Modified files: cm3/m3-comm/netobj/tests/longcall/src/: LongCallTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Sat Aug 17 00:00:04 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 17 Aug 2013 0:00:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816220004.7A2415DEB85@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/17 00:00:04 Modified files: cm3/m3-comm/netobj/tests/luca/src/: LucaTest.m3 Log message: Add explanation of pathname command-line parameter. From rodney at elego.de Mon Aug 19 01:26:54 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 1:26:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130818232654.C95BA5DE10C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 01:26:54 Modified files: cm3/m3-libs/m3core/src/text/: Tag: devel_unicode TextLiteral.i3 Log message: Comments: make them WIDECHAR-size-independent. From rodney at elego.de Mon Aug 19 04:13:25 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:13:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021325.921615DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:13:25 Modified files: cm3/m3-comm/netobj/src/netobjrt/: Tag: devel_unicode AtomPkl.i3 ListPkl.i3 Log message: Comments. From rodney at elego.de Mon Aug 19 04:17:18 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:17:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021718.2312D5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:17:18 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode Pickle.m3 Log message: Fix a long-standing bug that causes runaway memory allocation when unpickling strings with WIDECHARs on 64-bit machines, using version 1 pickles. From rodney at elego.de Mon Aug 19 04:19:11 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:19:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021911.898A75DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:19:11 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode BuiltinSpecials.m3 Log message: Make version 1 pickles work on WIDECHARs of either 16- or 32-bit size. From rcoleburn at elego.de Sun Aug 25 22:52:28 2013 From: rcoleburn at elego.de (Randy Coleburn) Date: Sun, 25 Aug 2013 22:52:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130825205228.5F7DC5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 13/08/25 22:52:28 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: SocketWin32.m3 Log message: Resolve compilation error at line 59, by importing WinDef for use with WinDef.BOOL. Seeing as how this code had an obvious compilation error, that means no one has tested it before committing the last round of changes to the repository. Therefore, suggest folks consider this revised module as potentially buggy until proved out. --Randy Coleburn From rodney at elego.de Mon Aug 26 02:06:13 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:06:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826000613.1CFAF9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:06:13 Added files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: devel_unicode m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of Unicode-sized WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:11:22 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:11:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826001122.15F4A9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:11:22 Added files: cm3/m3-libs/libm3/tests/pickle/src/: m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of 16-bit WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:17:12 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:17:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826001712.3D34D9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:17:12 Added files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: release_branch_cm3_5_8 m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of 16-bit WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:25:25 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:25:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826002525.7486C9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:25:25 Modified files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: devel_unicode PickleTestWideChar.m3 Log message: uncomment things that only work with Unicode-sized WIDECHAR and recent libraries. From rodney at elego.de Mon Aug 26 02:27:58 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:27:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826002758.892709C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:27:58 Modified files: cm3/m3-libs/libm3/tests/pickle/src/: PickleTestWideChar.m3 Log message: Uncomment TextClass.Flatten call, which only exists in head and unicode branch. From jkrell at elego.de Tue Aug 27 09:25:19 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 9:25:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827072519.28357A36132@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 09:25:19 Modified files: cm3/scripts/python/: pylib.py Log message: fix /dev/null on Windows, allow for newer Visual C++ toolset From jkrell at elego.de Tue Aug 27 10:22:00 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 10:22:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827082200.BAC909BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 10:22:00 Modified files: cm3/m3-sys/cm3/src/: m3makefile Utils.i3 UtilsWin32.m3 Log message: restore workaround to bootstrap from 5.8.5 From jkrell at elego.de Tue Aug 27 11:03:45 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 11:03:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827090345.C206E9BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 11:03:45 Modified files: cm3/m3-sys/mklib/src/: Main.m3 Log message: ignore sse2 floating point constants from newer compilers -- they start '__xmm@' but by the time they get here they are merely '_xmm' From jkrell at elego.de Tue Aug 27 16:56:10 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 16:56:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827145610.5CEE19BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 16:56:10 Added files: cm3/m3-sys/cm3/src/: cm3unix.c Log message: workaround to bootstrap from slightly older builds From jkrell at elego.de Tue Aug 27 17:23:30 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 17:23:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827152330.B5A6B9BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 17:23:30 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: FSWin32.m3 Log message: go back a version to fix heap corruption From jkrell at elego.de Tue Aug 27 18:08:29 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 18:08:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827160829.828399BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 18:08:29 Modified files: cm3/m3-libs/libm3/src/uid/WIN32/: MachineID.c Log message: older cm3 config files do not link with iphlpapi.lib so use LoadLibrary/GetProcAddress From jkrell at elego.de Wed Aug 28 09:09:09 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:09:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828070909.424CF9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:09:09 Modified files: cm3/m3-sys/m3back/src/: M3C.m3 Log message: win64: go back to "m" for "minus" or "negative" instead of "-" in typeids. I'm not sure why but it doesn't likely matter. These are just opaque strings formed from 32bit integers. win64: replace \ with / in source files in set_source_file Otherwise we get errors about unknown escape sequences win64: handle immediately recursive pointer types like: TYPE PFOO = UNTRACED REF PFOO. These are typos actually in m3core\src\win32. They are supposed to be TYPE Foo = RECORD ... END; TYPE PFOO = UNTRACED REF PFOO. I special case pointer types that point to self and just make them void*. Actually should make them ADDRESS (i.e. char*, valid K&R). With this we make very significant progress compiling m3core for AMD64_NT. There are just a few problems because INTEGER/CARDINAL is used incorrectly in the code, and the suffixes aren't being computed correctly either, so nothing is up to date and we link the wrong .obj files. From jkrell at elego.de Wed Aug 28 09:13:43 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:13:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828071344.083259D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:13:43 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: NT.common Log message: in support of the C backend, use -Fo to set the output file of C/C++ compilation From jkrell at elego.de Wed Aug 28 09:32:42 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:32:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828073242.837FB9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:32:42 Added files: cm3/m3-libs/m3core/src/Csupport/Common/: lround-readme.txt s_lroundl.c s_llroundl.c Log message: initial copies from OpenBSD From jkrell at elego.de Wed Aug 28 09:44:48 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:44:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828074448.3AC089D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:44:48 Added files: cm3/m3-libs/m3core/src/Csupport/Common/: s_lround.c Log message: initial copies from OpenBSD From jkrell at elego.de Wed Aug 28 09:58:16 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:58:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828075816.A00679D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:58:16 Modified files: cm3/m3-sys/m3back/src/: M3C.m3 Log message: win64: temporary workaround: truncate instead of round From jkrell at elego.de Wed Aug 28 10:08:07 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 10:08:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828080807.3F19F9BA00A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 10:08:07 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: AMD64_NT: set correct jmpbuf size: 32 int64s AMD64_NT: set setjmp to be "setjmp" and not "_setjmp" (got link error on m3core otherwise) From jkrell at elego.de Wed Aug 28 10:27:05 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 10:27:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828082705.EA7689BA00A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 10:27:05 Added files: cm3/m3-libs/m3core/src/C/AMD64_NT/: Csetjmp.i3 m3makefile Log message: "longjmp" instead of common "_longjmp" From jkrell at elego.de Wed Aug 28 11:13:27 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 11:13:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828091328.021BA9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 11:13:27 Modified files: cm3/scripts/python/: pylib.py Log message: work in progress..just Makefile tweaks..I'm now able to link AMD64_NT cm3.exe, I might have hand tweaked the final compile/link instead of using the exact Makefile produced here From jkrell at elego.de Thu Aug 29 09:20:19 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:20:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829072019.26D7A9D62B8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:20:19 Modified files: cm3/m3-libs/m3core/src/win32/: WinGDI.i3 Log message: Win64: INT32 = 16_FFFFFFFF => -1 so it compiles, 16_FFFFFFFF is out of range. Seems a little fishy? From jkrell at elego.de Thu Aug 29 09:30:43 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:30:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829073043.66FA99D62B8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:30:43 Modified files: cm3/m3-libs/m3core/src/time/WIN32/: TimeWin32.m3 Log message: Win64: LAST(INTEGER) => LAST_INTEGER32 = 16_7FFFFFFF (right?) and use LAST_INTEGER32 instead. That is what was intended here. Pending testing, replace this messy Modula-3 with the short clean C code already neighboring. Really, the Modula-3 is doing some math gymnastics that I can't decipher but surely is meant to be equivalent to the C code, modulo possibly rounding. The Modula-3 Win32 code is somewhat rife with the questionable assumption that INTEGER is 32 bits. Really, that isn't terrible, but we probably more code that assumes INTEGER can hold pointers, so we will go with that. From jkrell at elego.de Thu Aug 29 09:37:22 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:37:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829073722.2521D9D62B7@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:37:22 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3 Log message: Win64: LAST(CARDINAL) => LAST_CARDINAL32 = 16_7FFFFFFF and use that instead. That is what was intended, as this is changing a wait over some Modula-3 time unit into a Win32 wait in 32bit milliseconds, and the Modula-3 code is going to loop if the value doesn't fit. Really, it should probably be using 16_FFFFFFFE but is probably too challenging. (16_FFFFFFFF is a special value: "INFINITE"), 16_FFFFFFFE is the largest non-infinite value. If 32bit LAST(CARDINAL) is really 16_FFFFFFFF then this fix is incorrect. But as I recall CARDINAL is 0..LAST(INTEGER) -- 31 bit half range. It's too bad really to waste the extra bit. From jkrell at elego.de Fri Aug 30 04:45:06 2013 From: jkrell at elego.de (Jay Krell) Date: Fri, 30 Aug 2013 4:45:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130830024506.638E79C600A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/30 04:45:06 Modified files: cm3/scripts/python/: targets.txt Log message: add AMD64_NT From jkrell at elego.de Fri Aug 30 08:00:05 2013 From: jkrell at elego.de (Jay Krell) Date: Fri, 30 Aug 2013 8:00:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130830060005.3ABDEA361B5@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/30 08:00:05 Modified files: cm3/m3-libs/m3core/src/win32/: WinNT.i3 Log message: Win64: MEMORY_BASIC_INFO.RegionSize UINT32 => SIZE_T Otherwise we fail an assertion at startup -- yes, we get that far. Todo: Stop cloning headers and write C instead.. From jkrell at elego.de Sat Aug 31 04:30:58 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 4:30:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831023058.C43929D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 04:30:58 Modified files: cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 Log message: clear executable flag, no diff otherwise From jkrell at elego.de Sat Aug 31 05:15:13 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:15:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831031513.5502D9D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:15:13 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile ./: m3makefile cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile Added files: cm3/m3-libs/m3core/src/C/Common/: CsetjmpC.c ./: CsetjmpC.c Removed files: cm3/m3-libs/m3core/src/C/AMD64_NT/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_CYGWIN/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_MINGW/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_NT/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/NT386/: Csetjmp.i3 m3makefile Log message: Wrap longjmp/_longjmp in Csetjmp__ulongjmp instead of header cloning. A reasonable alternative here would have been to have POSIX/Csetjmp.i3 and WIN32/Csetjmp.i3. Not clear where Cygwin lies here, it looks like they provide both and they are equivalent. From jkrell at elego.de Sat Aug 31 05:17:14 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:17:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831031714.D9DAC9D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:17:14 Modified files: cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 Log message: clear executable flag again, my editor put it back From jkrell at elego.de Sat Aug 31 05:24:45 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:24:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831032445.799269D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:24:45 Modified files: cm3/m3-libs/m3core/src/Csupport/libgcc/: libgcc.c Log message: fix for OpenVMS C++ (instead of C, see m3core.h) From jkrell at elego.de Sat Aug 31 05:49:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:49:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831034928.089D15DE10C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:49:25 Modified files: cm3/scripts/python/: pylib.py Log message: For a significant speedup, pass all the C files to the compiler at once. For NT/boot/c. Collateral change/damage: Muse use .obj instead of .o, as /Fo can either specify output file for one input or output directory for multiple inputs. When specifying output directory, the output file is implied foo.c => foo.obj. Also, all outputs must go to same directory, ok. We use "." or "./", the "/" meaning "directory". Some cleanup: foo = [a,b][c] instead of foo = a if c: foo = b and such From jkrell at elego.de Sat Aug 31 05:54:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:54:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831035425.464205DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:54:25 Modified files: cm3/scripts/python/: pylib.py Log message: oops -- missing colons From jkrell at elego.de Sat Aug 31 06:03:33 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:03:33 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831040333.E1C305DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:03:33 Modified files: cm3/m3-libs/m3core/src/win32/: WinGDI.i3 WinReg.i3 Log message: fix incorrect cloned headers PFOO = UNTRACED REF PFOO was meant to be PFOO = UNTRACED REF FOO (also LPFOO) Caught by bug in C backend that recursed forever on such things (fixed there to make them just void*/ADDRESS) I suggest we radically trim these cloned headers and interface with C be done otherwise.. Win32 is thankfully though free of many structs and instead deals a lot with pointers. Still, this entire directory is suspect. From jkrell at elego.de Sat Aug 31 06:11:24 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:11:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831041124.CECD19BA01B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:11:24 Modified files: cm3/m3-sys/m3middle/src/: M3CG_MultiPass.i3 M3CG_MultiPass.m3 ./: M3CG_MultiPass.i3 M3CG_MultiPass.m3 cm3/m3-sys/m3back/src/: M3C.m3 Log message: Support NULL type. It occurs in approx one place: elego/graphicutils/src/RsrcFilter.m3 In the generate C, it called "M3_NULL_T". work in progress, not to be completed particularly soon: The goal here is to make the C backend independent of the flag in m3front that guides the order of nested function output. Part of the strategy is to give M3CG.Replay a range to replay. i.e. from begin_procedure to end_procedure. Instead, for now, the C backend has a requirement on the m3front flags. That is ok. The NT/x86 backend has a similar requirement. From jkrell at elego.de Sat Aug 31 06:30:23 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:30:23 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831043023.768B59D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:30:23 Modified files: cm3/scripts/python/: pylib.py Log message: case insensitivity for targets on command line to Python scripts From jkrell at elego.de Sat Aug 31 06:38:44 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:38:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831043844.4EA805DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:38:44 Modified files: cm3/m3-sys/m3middle/src/: TWord.i3 Log message: IMPORT TInt From jkrell at elego.de Sat Aug 31 06:40:56 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:40:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831044056.A82D05DEB78@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:40:56 Modified files: cm3/m3-libs/m3core/src/: m3core.h Log message: remove PVOID to avoid benign re-typedef warning From jkrell at elego.de Sat Aug 31 08:18:42 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:18:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831061842.5E0A15DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:18:42 Modified files: cm3/m3-libs/m3core/src/win32/: WinUser.i3 WinVer.i3 Log message: put constants in range to quash warnings From jkrell at elego.de Sat Aug 31 08:53:05 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:53:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831065305.92A4B5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:53:05 Modified files: cm3/m3-libs/m3core/src/win32/: WinBase.i3 Log message: change negative constants from UINT32 to INT32 to fix warning that they aren't in range From jkrell at elego.de Sat Aug 31 08:55:00 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:55:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831065500.91B7D5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:55:00 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: Expose types, constants, and "pure" helpers to all targets. Note that WinUser.m3 is a mix of "pure" helpers and linkage to underlying .dlls. It could be split up to expose the helpers on all targets. We were already doing this for some of the interfaces. From jkrell at elego.de Sat Aug 31 09:10:57 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:10:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831071057.9A7765DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:10:57 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile ./: m3makefile Added files: cm3/m3-libs/m3core/src/C/WIN64/: BasicCtypes.i3 m3makefile Log message: aha, subtle but super super super important This is NOT the same as 32bits or 64bits, due to the delegation to Word.T. From jkrell at elego.de Sat Aug 31 09:14:44 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:14:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831071444.877915DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:14:44 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: go back a version, I didn't checkin the copy I intended From jkrell at elego.de Sat Aug 31 09:26:11 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:26:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831072611.B022C5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:26:11 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: Try this again: expose types/constants to all platforms. And some of the helpers. They can be slightly useful, like to manipulate Win32 .dlls, Win32 .bmps, etc. What I was really after was seeing what platforms computed for type sizes, and when AMD64_DARWIN was correct and AMD64_NT incorrect, I looked deeper. But anyway, it is ok to expose the types to all targets. From jkrell at elego.de Sat Aug 31 09:56:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:56:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831075625.B3BCC5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:56:25 Modified files: cm3/scripts/python/: pylib.py Log message: complete the batching work for much faster NT bootstrapping -- double colons and .obj instead of .o From jkrell at elego.de Sat Aug 31 10:59:45 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 10:59:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831085945.16B395DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 10:59:45 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile Log message: arg! WORD_BITS is a string: "64BITS", not the sensible number: 64.. and it falls apart a bit from there.. From jkrell at elego.de Sat Aug 31 18:05:54 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 18:05:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831160554.D4ADA5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 18:05:54 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32C.c Log message: ThreadWin32__GetStackBounds in C, consider using From jkrell at elego.de Sat Aug 31 19:36:08 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 19:36:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831173609.0178F5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 19:36:08 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: Add comment that AMD64_NT jmpbuf is 256 bytes with 16 byte alignment. From jkrell at elego.de Sat Aug 31 19:38:11 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 19:38:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831173811.8D6A25DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 19:38:11 Modified files: cm3/m3-sys/m3middle/src/: M3RT.m3 ./: M3RT.m3 cm3/m3-sys/m3front/src/misc/: Marker.m3 Log message: raise jmpbuf alignment from always 64 to always 128 alternatives: - make it per-target - make it per-target but default to either 64 or address.Size * 2 - make it address.Size * 2 Anything other than per-target is a bit wasteful. Hopefully this will go away soon anyway in favor of alloca (the code is in m3front, but disabled) From jkrell at elego.de Sat Aug 31 20:26:09 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:26:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831182609.7B70853672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:26:09 Modified files: cm3/m3-libs/m3core/src/C/WIN64/: BasicCtypes.i3 Log message: remove unused import word From jkrell at elego.de Sat Aug 31 20:28:43 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:28:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831182843.60E5F53672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:28:43 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadContext.i3 Log message: win64 hack: change ebp from DWORD to SIZE_T This change can stand indefinitely. The right fix is that this file actually needs per-target work, and does does its client the stack walker. Or much better yet, use the CaptureStackBackTrace and/or C. From jkrell at elego.de Sat Aug 31 20:30:43 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:30:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831183043.93A3753672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:30:43 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: WinTabCon, WinListView fail to compile for Win64 so remove them there This needs more work.. From jkrell at elego.de Sat Aug 31 20:32:52 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:32:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831183252.9D42C5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:32:52 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: ProcessWin32.m3 ./: ProcessWin32.m3 cm3/m3-libs/m3core/src/win32/: WinBase.i3 Log message: change GetStdHandle, SetStdHandle, GetFileHandle from taking DWORD/UINT32 to INT32. The usual constants used here are negative. Perhaps the right fix though is to state them as large positive. Or write C wrappers and remove the dependency on cloned headers. Now cm3 gets as far as not finding cm3.cfg, which is expected. ! From jkrell at elego.de Sat Aug 31 21:08:03 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:08:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831190803.522615DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:08:03 Modified files: cm3/scripts/python/: pylib.py Log message: c/nt Makefile: \r\n instead of \n c/nt Makefile: .exe on target (we are producing cm3.exe anyway) c/nt Makefile: output .pdb (tested a different approach, but we'll see) AMD64_NT: temporary hack to use libcmt.lib instead of msvcrt.lib Some problem with exception handling and alignment, wierd From jkrell at elego.de Sat Aug 31 21:15:59 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:15:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831191559.BC4625DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:15:59 Added files: cm3/scripts/python/: boot2.cmd Log message: like boot2.sh, thin wrapper over Python scripts From jkrell at elego.de Sat Aug 31 21:17:20 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:17:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831191720.B29005DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:17:20 Modified files: cm3/scripts/python/: boot2.cmd Log message: skip gcc From jkrell at elego.de Sat Aug 31 21:24:35 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:24:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831192435.C73B35DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:24:35 Modified files: cm3/scripts/python/: pylib.py Log message: clenaup e.g. use , and need /debug to get pdb out From rodney at elego.de Thu Aug 1 00:11:01 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:11:01 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731221101.D3E075DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:11:01 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode BuiltinSpecials.m3 Log message: Was hitting a compiler limit on 32-bit machine and 32-bit WIDECHAR From rodney at elego.de Thu Aug 1 00:11:22 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:11:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731221122.45D095366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:11:22 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode BuiltinSpecials2.m3 Log message: Was hitting a compiler limit on 32-bit machine and 32-bit WIDECHAR From rodney at elego.de Thu Aug 1 00:29:17 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:29:17 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731222917.26ED55366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:29:17 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.m3 ./: Tag: devel_unicode ConvertPacking.m3 cm3/m3-libs/m3core/src/runtime/common/: Tag: devel_unicode RTTipe.i3 RTTipe.m3 Log message: Comment widely scattered places affected by ersatz method of denoting WIDECHAR by as an enumeration rather than its own kind. From rodney at elego.de Thu Aug 1 00:32:06 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 0:32:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731223206.0A4C25366D8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 00:32:06 Modified files: cm3/m3-sys/m3front/src/builtinTypes/: Tag: devel_unicode WCharr.m3 ./: Tag: devel_unicode WCharr.m3 cm3/m3-sys/m3front/src/misc/: Tag: devel_unicode TipeDesc.i3 Log message: Comment widely scattered places affected by ersatz method of denoting WIDECHAR by as an enumeration rather than its own kind. From rodney at elego.de Thu Aug 1 01:08:51 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 1:08:51 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130731230851.3DB005DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 01:08:51 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 PickleStubs.m3 Log message: Better handling of out-of-range WIDECHAR values From rodney at elego.de Thu Aug 1 06:54:35 2013 From: rodney at elego.de (Rodney M. Bates) Date: Thu, 1 Aug 2013 6:54:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130801045435.34CEE9C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/01 06:54:35 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Log message: Editorial comments about excessive information hiding From rodney at elego.de Fri Aug 2 01:15:53 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 2 Aug 2013 1:15:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130801231553.B902B9C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/02 01:15:53 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Pickle2.i3 Pickle2.m3 Log message: Partial implementation for writing backwards-compatible pickles. From rodney at elego.de Sat Aug 3 00:25:54 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 3 Aug 2013 0:25:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130802222554.816175DEB89@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/03 00:25:54 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode Pickle2.m3 Log message: An almost solution to the problem of TextLiteral.T's having MaxBytes dependent on word size, making pickling of TextLiteral.T fail across different word sizes. Hard code the fingerprint for the 64-bit case and translate it to the one for 32-bit systems, in pickles. Also vice-versa. The best long-term solution also involves making TextLiteral.MaxBytes word-size-independent. This could invalidate some preexisting pickles, but only if they contain heap objects with a field or element with declared static type TextLiteral.T, which seems quite unlikely. If such fields/methods are declared as TEXT, the actual allocated type of their referents can be TextLiteral.T and all will work. From rodney at elego.de Sat Aug 3 20:00:28 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 3 Aug 2013 20:00:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130803180028.1D1B09C6006@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/03 20:00:28 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode PickleStubs.m3 Log message: Byte-swap rework in InWideChars From rodney at elego.de Fri Aug 9 17:34:07 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 9 Aug 2013 17:34:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130809153407.4F5CD5DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/09 17:34:07 Modified files: cm3/m3-sys/cm3/src/: Tag: devel_unicode cm3.1 Log message: WIDECHAR, gstabs+, typos. From rodney at elego.de Fri Aug 9 17:53:57 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 9 Aug 2013 17:53:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130809155357.AA0245DEB87@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/09 17:53:57 Modified files: cm3/m3-libs/libm3/src/rw/: Tag: devel_unicode Rd.m3 UnsafeRd.i3 Log message: Compatability: Restore FastUnGetChar as a wrapper for FastUnGetCharMulti. From rodney at elego.de Sat Aug 10 19:05:02 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 10 Aug 2013 19:05:02 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130810170502.B23D49D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/10 19:05:02 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 Pickle2.m3 Log message: Some refactoring for a simpler and more general circumvention of too much information hiding. Also, fingerprint renames to reflect that they now relate to more than just pm3/cm3 differences . From rodney at elego.de Sun Aug 11 00:15:44 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sun, 11 Aug 2013 0:15:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130810221544.CD67B5DEB87@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/11 00:15:44 Modified files: cm3/m3-libs/sysutils/src/: Tag: devel_unicode FastLex.m3 Log message: Short-circuit new nd-nothing wrapper. From jkrell at elego.de Mon Aug 12 07:35:12 2013 From: jkrell at elego.de (Jay Krell) Date: Mon, 12 Aug 2013 7:35:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130812053512.C6874A36177@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/12 07:35:12 Modified files: cm3/m3-sys/m3cc/: .cvsignore Log message: update .cvsignore, more to come From rodney at elego.de Tue Aug 13 03:16:04 2013 From: rodney at elego.de (Rodney M. Bates) Date: Tue, 13 Aug 2013 3:16:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813011604.413B05DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/13 03:16:04 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode ConvertPacking.i3 ConvertPacking.m3 PickleStubs.i3 PickleStubs.m3 Log message: Move surrogate-tolerant [en|de]coders for better accessiblity to network objects and other things. From rodney at elego.de Wed Aug 14 01:49:53 2013 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 14 Aug 2013 1:49:53 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813234953.A42BA5DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/14 01:49:53 Modified files: cm3/m3-libs/libm3/src/pickle/ver2/: Tag: devel_unicode PickleStubs.m3 Log message: Comments. From rodney at elego.de Wed Aug 14 01:51:10 2013 From: rodney at elego.de (Rodney M. Bates) Date: Wed, 14 Aug 2013 1:51:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130813235110.E0E835DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/14 01:51:10 Modified files: cm3/m3-comm/netobj/src/netobjrt/: Tag: devel_unicode StubLib.m3 Log message: Initial mods to netobj for 32-bit WIDECHAR. From rodney at elego.de Fri Aug 16 23:15:14 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:15:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816211514.7B84D9F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:15:14 Modified files: cm3/m3-comm/netobj/tests/fd/src/: m3makefile ./: m3makefile cm3/m3-comm/netobj/tests/fd1/src/: m3makefile ./: m3makefile cm3/m3-comm/netobj/tests/perf/src/: m3makefile Log message: A lingering SRC-ism was preventing compilation. From rodney at elego.de Fri Aug 16 23:19:15 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:19:15 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816211915.471559F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:19:15 Modified files: cm3/m3-comm/netobj/tests/perf/src/: Tag: devel_unicode NetObjTest.m3 m3makefile Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:21:08 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:21:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212109.144139F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:21:08 Modified files: cm3/m3-comm/netobj/tests/luca/src/: Tag: devel_unicode LucaTest.m3 Log message: Add explanation of command line param. From rodney at elego.de Fri Aug 16 23:22:11 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:22:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212211.D94B85DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:22:11 Modified files: cm3/m3-comm/netobj/tests/longcall/src/: Tag: devel_unicode LongCallTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:23:39 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:23:39 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212339.711765DEB86@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:23:39 Modified files: cm3/m3-comm/netobj/tests/fd/src/: Tag: devel_unicode m3makefile ./: Tag: devel_unicode m3makefile cm3/m3-comm/netobj/tests/fd1/src/: Tag: devel_unicode m3makefile Log message: A lingering SRC-ism was preventing compilation. From rodney at elego.de Fri Aug 16 23:28:41 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:28:41 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816212842.62D4A9F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:28:41 Modified files: cm3/m3-comm/netobj/tests/perf/src/: NetObjTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Fri Aug 16 23:30:32 2013 From: rodney at elego.de (Rodney M. Bates) Date: Fri, 16 Aug 2013 23:30:32 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816213032.1F4D89F6137@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/16 23:30:32 Modified files: cm3/m3-comm/netobj/tests/longcall/src/: LongCallTest.m3 Log message: Correct error in running instructions. From rodney at elego.de Sat Aug 17 00:00:04 2013 From: rodney at elego.de (Rodney M. Bates) Date: Sat, 17 Aug 2013 0:00:04 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130816220004.7A2415DEB85@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/17 00:00:04 Modified files: cm3/m3-comm/netobj/tests/luca/src/: LucaTest.m3 Log message: Add explanation of pathname command-line parameter. From rodney at elego.de Mon Aug 19 01:26:54 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 1:26:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130818232654.C95BA5DE10C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 01:26:54 Modified files: cm3/m3-libs/m3core/src/text/: Tag: devel_unicode TextLiteral.i3 Log message: Comments: make them WIDECHAR-size-independent. From rodney at elego.de Mon Aug 19 04:13:25 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:13:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021325.921615DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:13:25 Modified files: cm3/m3-comm/netobj/src/netobjrt/: Tag: devel_unicode AtomPkl.i3 ListPkl.i3 Log message: Comments. From rodney at elego.de Mon Aug 19 04:17:18 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:17:18 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021718.2312D5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:17:18 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode Pickle.m3 Log message: Fix a long-standing bug that causes runaway memory allocation when unpickling strings with WIDECHARs on 64-bit machines, using version 1 pickles. From rodney at elego.de Mon Aug 19 04:19:11 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 19 Aug 2013 4:19:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130819021911.898A75DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/19 04:19:11 Modified files: cm3/m3-libs/libm3/src/pickle/ver1/: Tag: devel_unicode BuiltinSpecials.m3 Log message: Make version 1 pickles work on WIDECHARs of either 16- or 32-bit size. From rcoleburn at elego.de Sun Aug 25 22:52:28 2013 From: rcoleburn at elego.de (Randy Coleburn) Date: Sun, 25 Aug 2013 22:52:28 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130825205228.5F7DC5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rcoleburn at birch. 13/08/25 22:52:28 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: SocketWin32.m3 Log message: Resolve compilation error at line 59, by importing WinDef for use with WinDef.BOOL. Seeing as how this code had an obvious compilation error, that means no one has tested it before committing the last round of changes to the repository. Therefore, suggest folks consider this revised module as potentially buggy until proved out. --Randy Coleburn From rodney at elego.de Mon Aug 26 02:06:13 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:06:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826000613.1CFAF9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:06:13 Added files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: devel_unicode m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of Unicode-sized WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:11:22 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:11:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826001122.15F4A9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:11:22 Added files: cm3/m3-libs/libm3/tests/pickle/src/: m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of 16-bit WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:17:12 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:17:12 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826001712.3D34D9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:17:12 Added files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: release_branch_cm3_5_8 m3makefile UnsafeUtils.i3 UnsafeUtils.m3 PickleTestWideChar.m3 Log message: Test program for pickle support of 16-bit WIDECHAR, initial checkin. From rodney at elego.de Mon Aug 26 02:25:25 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:25:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826002525.7486C9C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:25:25 Modified files: cm3/m3-libs/libm3/tests/pickle/src/: Tag: devel_unicode PickleTestWideChar.m3 Log message: uncomment things that only work with Unicode-sized WIDECHAR and recent libraries. From rodney at elego.de Mon Aug 26 02:27:58 2013 From: rodney at elego.de (Rodney M. Bates) Date: Mon, 26 Aug 2013 2:27:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130826002758.892709C6002@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: rodney at birch. 13/08/26 02:27:58 Modified files: cm3/m3-libs/libm3/tests/pickle/src/: PickleTestWideChar.m3 Log message: Uncomment TextClass.Flatten call, which only exists in head and unicode branch. From jkrell at elego.de Tue Aug 27 09:25:19 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 9:25:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827072519.28357A36132@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 09:25:19 Modified files: cm3/scripts/python/: pylib.py Log message: fix /dev/null on Windows, allow for newer Visual C++ toolset From jkrell at elego.de Tue Aug 27 10:22:00 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 10:22:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827082200.BAC909BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 10:22:00 Modified files: cm3/m3-sys/cm3/src/: m3makefile Utils.i3 UtilsWin32.m3 Log message: restore workaround to bootstrap from 5.8.5 From jkrell at elego.de Tue Aug 27 11:03:45 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 11:03:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827090345.C206E9BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 11:03:45 Modified files: cm3/m3-sys/mklib/src/: Main.m3 Log message: ignore sse2 floating point constants from newer compilers -- they start '__xmm@' but by the time they get here they are merely '_xmm' From jkrell at elego.de Tue Aug 27 16:56:10 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 16:56:10 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827145610.5CEE19BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 16:56:10 Added files: cm3/m3-sys/cm3/src/: cm3unix.c Log message: workaround to bootstrap from slightly older builds From jkrell at elego.de Tue Aug 27 17:23:30 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 17:23:30 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827152330.B5A6B9BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 17:23:30 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: FSWin32.m3 Log message: go back a version to fix heap corruption From jkrell at elego.de Tue Aug 27 18:08:29 2013 From: jkrell at elego.de (Jay Krell) Date: Tue, 27 Aug 2013 18:08:29 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130827160829.828399BA003@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/27 18:08:29 Modified files: cm3/m3-libs/libm3/src/uid/WIN32/: MachineID.c Log message: older cm3 config files do not link with iphlpapi.lib so use LoadLibrary/GetProcAddress From jkrell at elego.de Wed Aug 28 09:09:09 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:09:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828070909.424CF9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:09:09 Modified files: cm3/m3-sys/m3back/src/: M3C.m3 Log message: win64: go back to "m" for "minus" or "negative" instead of "-" in typeids. I'm not sure why but it doesn't likely matter. These are just opaque strings formed from 32bit integers. win64: replace \ with / in source files in set_source_file Otherwise we get errors about unknown escape sequences win64: handle immediately recursive pointer types like: TYPE PFOO = UNTRACED REF PFOO. These are typos actually in m3core\src\win32. They are supposed to be TYPE Foo = RECORD ... END; TYPE PFOO = UNTRACED REF PFOO. I special case pointer types that point to self and just make them void*. Actually should make them ADDRESS (i.e. char*, valid K&R). With this we make very significant progress compiling m3core for AMD64_NT. There are just a few problems because INTEGER/CARDINAL is used incorrectly in the code, and the suffixes aren't being computed correctly either, so nothing is up to date and we link the wrong .obj files. From jkrell at elego.de Wed Aug 28 09:13:43 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:13:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828071344.083259D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:13:43 Modified files: cm3/m3-sys/cminstall/src/config-no-install/: NT.common Log message: in support of the C backend, use -Fo to set the output file of C/C++ compilation From jkrell at elego.de Wed Aug 28 09:32:42 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:32:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828073242.837FB9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:32:42 Added files: cm3/m3-libs/m3core/src/Csupport/Common/: lround-readme.txt s_lroundl.c s_llroundl.c Log message: initial copies from OpenBSD From jkrell at elego.de Wed Aug 28 09:44:48 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:44:48 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828074448.3AC089D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:44:48 Added files: cm3/m3-libs/m3core/src/Csupport/Common/: s_lround.c Log message: initial copies from OpenBSD From jkrell at elego.de Wed Aug 28 09:58:16 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 9:58:16 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828075816.A00679D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 09:58:16 Modified files: cm3/m3-sys/m3back/src/: M3C.m3 Log message: win64: temporary workaround: truncate instead of round From jkrell at elego.de Wed Aug 28 10:08:07 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 10:08:07 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828080807.3F19F9BA00A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 10:08:07 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: AMD64_NT: set correct jmpbuf size: 32 int64s AMD64_NT: set setjmp to be "setjmp" and not "_setjmp" (got link error on m3core otherwise) From jkrell at elego.de Wed Aug 28 10:27:05 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 10:27:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828082705.EA7689BA00A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 10:27:05 Added files: cm3/m3-libs/m3core/src/C/AMD64_NT/: Csetjmp.i3 m3makefile Log message: "longjmp" instead of common "_longjmp" From jkrell at elego.de Wed Aug 28 11:13:27 2013 From: jkrell at elego.de (Jay Krell) Date: Wed, 28 Aug 2013 11:13:27 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130828091328.021BA9D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/28 11:13:27 Modified files: cm3/scripts/python/: pylib.py Log message: work in progress..just Makefile tweaks..I'm now able to link AMD64_NT cm3.exe, I might have hand tweaked the final compile/link instead of using the exact Makefile produced here From jkrell at elego.de Thu Aug 29 09:20:19 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:20:19 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829072019.26D7A9D62B8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:20:19 Modified files: cm3/m3-libs/m3core/src/win32/: WinGDI.i3 Log message: Win64: INT32 = 16_FFFFFFFF => -1 so it compiles, 16_FFFFFFFF is out of range. Seems a little fishy? From jkrell at elego.de Thu Aug 29 09:30:43 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:30:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829073043.66FA99D62B8@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:30:43 Modified files: cm3/m3-libs/m3core/src/time/WIN32/: TimeWin32.m3 Log message: Win64: LAST(INTEGER) => LAST_INTEGER32 = 16_7FFFFFFF (right?) and use LAST_INTEGER32 instead. That is what was intended here. Pending testing, replace this messy Modula-3 with the short clean C code already neighboring. Really, the Modula-3 is doing some math gymnastics that I can't decipher but surely is meant to be equivalent to the C code, modulo possibly rounding. The Modula-3 Win32 code is somewhat rife with the questionable assumption that INTEGER is 32 bits. Really, that isn't terrible, but we probably more code that assumes INTEGER can hold pointers, so we will go with that. From jkrell at elego.de Thu Aug 29 09:37:22 2013 From: jkrell at elego.de (Jay Krell) Date: Thu, 29 Aug 2013 9:37:22 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130829073722.2521D9D62B7@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/29 09:37:22 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32.m3 Log message: Win64: LAST(CARDINAL) => LAST_CARDINAL32 = 16_7FFFFFFF and use that instead. That is what was intended, as this is changing a wait over some Modula-3 time unit into a Win32 wait in 32bit milliseconds, and the Modula-3 code is going to loop if the value doesn't fit. Really, it should probably be using 16_FFFFFFFE but is probably too challenging. (16_FFFFFFFF is a special value: "INFINITE"), 16_FFFFFFFE is the largest non-infinite value. If 32bit LAST(CARDINAL) is really 16_FFFFFFFF then this fix is incorrect. But as I recall CARDINAL is 0..LAST(INTEGER) -- 31 bit half range. It's too bad really to waste the extra bit. From jkrell at elego.de Fri Aug 30 04:45:06 2013 From: jkrell at elego.de (Jay Krell) Date: Fri, 30 Aug 2013 4:45:06 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130830024506.638E79C600A@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/30 04:45:06 Modified files: cm3/scripts/python/: targets.txt Log message: add AMD64_NT From jkrell at elego.de Fri Aug 30 08:00:05 2013 From: jkrell at elego.de (Jay Krell) Date: Fri, 30 Aug 2013 8:00:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130830060005.3ABDEA361B5@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/30 08:00:05 Modified files: cm3/m3-libs/m3core/src/win32/: WinNT.i3 Log message: Win64: MEMORY_BASIC_INFO.RegionSize UINT32 => SIZE_T Otherwise we fail an assertion at startup -- yes, we get that far. Todo: Stop cloning headers and write C instead.. From jkrell at elego.de Sat Aug 31 04:30:58 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 4:30:58 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831023058.C43929D620B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 04:30:58 Modified files: cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 Log message: clear executable flag, no diff otherwise From jkrell at elego.de Sat Aug 31 05:15:13 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:15:13 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831031513.5502D9D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:15:13 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile ./: m3makefile cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile Added files: cm3/m3-libs/m3core/src/C/Common/: CsetjmpC.c ./: CsetjmpC.c Removed files: cm3/m3-libs/m3core/src/C/AMD64_NT/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_CYGWIN/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_MINGW/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/I386_NT/: Csetjmp.i3 m3makefile ./: Csetjmp.i3 m3makefile cm3/m3-libs/m3core/src/C/NT386/: Csetjmp.i3 m3makefile Log message: Wrap longjmp/_longjmp in Csetjmp__ulongjmp instead of header cloning. A reasonable alternative here would have been to have POSIX/Csetjmp.i3 and WIN32/Csetjmp.i3. Not clear where Cygwin lies here, it looks like they provide both and they are equivalent. From jkrell at elego.de Sat Aug 31 05:17:14 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:17:14 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831031714.D9DAC9D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:17:14 Modified files: cm3/m3-libs/m3core/src/C/Common/: Csetjmp.i3 Log message: clear executable flag again, my editor put it back From jkrell at elego.de Sat Aug 31 05:24:45 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:24:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831032445.799269D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:24:45 Modified files: cm3/m3-libs/m3core/src/Csupport/libgcc/: libgcc.c Log message: fix for OpenVMS C++ (instead of C, see m3core.h) From jkrell at elego.de Sat Aug 31 05:49:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:49:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831034928.089D15DE10C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:49:25 Modified files: cm3/scripts/python/: pylib.py Log message: For a significant speedup, pass all the C files to the compiler at once. For NT/boot/c. Collateral change/damage: Muse use .obj instead of .o, as /Fo can either specify output file for one input or output directory for multiple inputs. When specifying output directory, the output file is implied foo.c => foo.obj. Also, all outputs must go to same directory, ok. We use "." or "./", the "/" meaning "directory". Some cleanup: foo = [a,b][c] instead of foo = a if c: foo = b and such From jkrell at elego.de Sat Aug 31 05:54:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 5:54:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831035425.464205DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 05:54:25 Modified files: cm3/scripts/python/: pylib.py Log message: oops -- missing colons From jkrell at elego.de Sat Aug 31 06:03:33 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:03:33 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831040333.E1C305DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:03:33 Modified files: cm3/m3-libs/m3core/src/win32/: WinGDI.i3 WinReg.i3 Log message: fix incorrect cloned headers PFOO = UNTRACED REF PFOO was meant to be PFOO = UNTRACED REF FOO (also LPFOO) Caught by bug in C backend that recursed forever on such things (fixed there to make them just void*/ADDRESS) I suggest we radically trim these cloned headers and interface with C be done otherwise.. Win32 is thankfully though free of many structs and instead deals a lot with pointers. Still, this entire directory is suspect. From jkrell at elego.de Sat Aug 31 06:11:24 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:11:24 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831041124.CECD19BA01B@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:11:24 Modified files: cm3/m3-sys/m3middle/src/: M3CG_MultiPass.i3 M3CG_MultiPass.m3 ./: M3CG_MultiPass.i3 M3CG_MultiPass.m3 cm3/m3-sys/m3back/src/: M3C.m3 Log message: Support NULL type. It occurs in approx one place: elego/graphicutils/src/RsrcFilter.m3 In the generate C, it called "M3_NULL_T". work in progress, not to be completed particularly soon: The goal here is to make the C backend independent of the flag in m3front that guides the order of nested function output. Part of the strategy is to give M3CG.Replay a range to replay. i.e. from begin_procedure to end_procedure. Instead, for now, the C backend has a requirement on the m3front flags. That is ok. The NT/x86 backend has a similar requirement. From jkrell at elego.de Sat Aug 31 06:30:23 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:30:23 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831043023.768B59D620D@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:30:23 Modified files: cm3/scripts/python/: pylib.py Log message: case insensitivity for targets on command line to Python scripts From jkrell at elego.de Sat Aug 31 06:38:44 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:38:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831043844.4EA805DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:38:44 Modified files: cm3/m3-sys/m3middle/src/: TWord.i3 Log message: IMPORT TInt From jkrell at elego.de Sat Aug 31 06:40:56 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 6:40:56 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831044056.A82D05DEB78@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 06:40:56 Modified files: cm3/m3-libs/m3core/src/: m3core.h Log message: remove PVOID to avoid benign re-typedef warning From jkrell at elego.de Sat Aug 31 08:18:42 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:18:42 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831061842.5E0A15DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:18:42 Modified files: cm3/m3-libs/m3core/src/win32/: WinUser.i3 WinVer.i3 Log message: put constants in range to quash warnings From jkrell at elego.de Sat Aug 31 08:53:05 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:53:05 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831065305.92A4B5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:53:05 Modified files: cm3/m3-libs/m3core/src/win32/: WinBase.i3 Log message: change negative constants from UINT32 to INT32 to fix warning that they aren't in range From jkrell at elego.de Sat Aug 31 08:55:00 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 8:55:00 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831065500.91B7D5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 08:55:00 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: Expose types, constants, and "pure" helpers to all targets. Note that WinUser.m3 is a mix of "pure" helpers and linkage to underlying .dlls. It could be split up to expose the helpers on all targets. We were already doing this for some of the interfaces. From jkrell at elego.de Sat Aug 31 09:10:57 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:10:57 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831071057.9A7765DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:10:57 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile ./: m3makefile Added files: cm3/m3-libs/m3core/src/C/WIN64/: BasicCtypes.i3 m3makefile Log message: aha, subtle but super super super important This is NOT the same as 32bits or 64bits, due to the delegation to Word.T. From jkrell at elego.de Sat Aug 31 09:14:44 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:14:44 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831071444.877915DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:14:44 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: go back a version, I didn't checkin the copy I intended From jkrell at elego.de Sat Aug 31 09:26:11 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:26:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831072611.B022C5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:26:11 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: Try this again: expose types/constants to all platforms. And some of the helpers. They can be slightly useful, like to manipulate Win32 .dlls, Win32 .bmps, etc. What I was really after was seeing what platforms computed for type sizes, and when AMD64_DARWIN was correct and AMD64_NT incorrect, I looked deeper. But anyway, it is ok to expose the types to all targets. From jkrell at elego.de Sat Aug 31 09:56:25 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 9:56:25 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831075625.B3BCC5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 09:56:25 Modified files: cm3/scripts/python/: pylib.py Log message: complete the batching work for much faster NT bootstrapping -- double colons and .obj instead of .o From jkrell at elego.de Sat Aug 31 10:59:45 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 10:59:45 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831085945.16B395DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 10:59:45 Modified files: cm3/m3-libs/m3core/src/C/: m3makefile Log message: arg! WORD_BITS is a string: "64BITS", not the sensible number: 64.. and it falls apart a bit from there.. From jkrell at elego.de Sat Aug 31 18:05:54 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 18:05:54 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831160554.D4ADA5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 18:05:54 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadWin32C.c Log message: ThreadWin32__GetStackBounds in C, consider using From jkrell at elego.de Sat Aug 31 19:36:08 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 19:36:08 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831173609.0178F5DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 19:36:08 Modified files: cm3/m3-sys/m3middle/src/: Target.m3 Log message: Add comment that AMD64_NT jmpbuf is 256 bytes with 16 byte alignment. From jkrell at elego.de Sat Aug 31 19:38:11 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 19:38:11 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831173811.8D6A25DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 19:38:11 Modified files: cm3/m3-sys/m3middle/src/: M3RT.m3 ./: M3RT.m3 cm3/m3-sys/m3front/src/misc/: Marker.m3 Log message: raise jmpbuf alignment from always 64 to always 128 alternatives: - make it per-target - make it per-target but default to either 64 or address.Size * 2 - make it address.Size * 2 Anything other than per-target is a bit wasteful. Hopefully this will go away soon anyway in favor of alloca (the code is in m3front, but disabled) From jkrell at elego.de Sat Aug 31 20:26:09 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:26:09 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831182609.7B70853672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:26:09 Modified files: cm3/m3-libs/m3core/src/C/WIN64/: BasicCtypes.i3 Log message: remove unused import word From jkrell at elego.de Sat Aug 31 20:28:43 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:28:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831182843.60E5F53672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:28:43 Modified files: cm3/m3-libs/m3core/src/thread/WIN32/: ThreadContext.i3 Log message: win64 hack: change ebp from DWORD to SIZE_T This change can stand indefinitely. The right fix is that this file actually needs per-target work, and does does its client the stack walker. Or much better yet, use the CaptureStackBackTrace and/or C. From jkrell at elego.de Sat Aug 31 20:30:43 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:30:43 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831183043.93A3753672C@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:30:43 Modified files: cm3/m3-libs/m3core/src/win32/: m3makefile Log message: WinTabCon, WinListView fail to compile for Win64 so remove them there This needs more work.. From jkrell at elego.de Sat Aug 31 20:32:52 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 20:32:52 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831183252.9D42C5DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 20:32:52 Modified files: cm3/m3-libs/libm3/src/os/WIN32/: ProcessWin32.m3 ./: ProcessWin32.m3 cm3/m3-libs/m3core/src/win32/: WinBase.i3 Log message: change GetStdHandle, SetStdHandle, GetFileHandle from taking DWORD/UINT32 to INT32. The usual constants used here are negative. Perhaps the right fix though is to state them as large positive. Or write C wrappers and remove the dependency on cloned headers. Now cm3 gets as far as not finding cm3.cfg, which is expected. ! From jkrell at elego.de Sat Aug 31 21:08:03 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:08:03 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831190803.522615DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:08:03 Modified files: cm3/scripts/python/: pylib.py Log message: c/nt Makefile: \r\n instead of \n c/nt Makefile: .exe on target (we are producing cm3.exe anyway) c/nt Makefile: output .pdb (tested a different approach, but we'll see) AMD64_NT: temporary hack to use libcmt.lib instead of msvcrt.lib Some problem with exception handling and alignment, wierd From jkrell at elego.de Sat Aug 31 21:15:59 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:15:59 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831191559.BC4625DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:15:59 Added files: cm3/scripts/python/: boot2.cmd Log message: like boot2.sh, thin wrapper over Python scripts From jkrell at elego.de Sat Aug 31 21:17:20 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:17:20 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831191720.B29005DEA96@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:17:20 Modified files: cm3/scripts/python/: boot2.cmd Log message: skip gcc From jkrell at elego.de Sat Aug 31 21:24:35 2013 From: jkrell at elego.de (Jay Krell) Date: Sat, 31 Aug 2013 21:24:35 () Subject: [M3commit] CVS Update: cm3 Message-ID: <20130831192435.C73B35DEB73@birch.elegosoft.com> CVSROOT: /usr/cvs Changes by: jkrell at birch. 13/08/31 21:24:35 Modified files: cm3/scripts/python/: pylib.py Log message: clenaup e.g. use , and need /debug to get pdb out