David, I’ve been trying building and testing ProofPower on the various combinations of MacOS Mojave v. Linux Fedora 24, —enable-compact32bit v. —disable-compact32bit and —enable-intinf-asint and —disable-intinf-asint and have a few observations.
1) The configure script doesn’t validate an option beginning "—enable-“. So I didn’t notice that I’d mistyped —enable-compact32bit until I realised that I was getting executables and saved states with almost identical sizes. (I appreciate that this may be an autoconfig thing that you can’t control.) 2) If you build Poly/ML with —disable-compact32bit and then try to build it with —enable-compact32 without doing “make clean", it will fail during the “make install” step like this: Making install in . ./polyimport polytemp.txt -I . < ./exportPoly.sml Assertion failed: (j >= -(((POLYSIGNED)0x80 << (POLYSIGNED)(8*(sizeof(PolyWord)-1) -1)) -1)-1 && j <= (((POLYSIGNED)0x80 << (POLYSIGNED)(8*(sizeof(PolyWord)-1) -1)) -1)), function GetValue, file pexport.cpp, line 461. /bin/sh: line 1: 46725 Abort trap: 6 ./polyimport polytemp.txt -I . < ./exportPoly.sml make[1]: *** [polyexport.o] Error 134 make: *** [install-recursive] Error 1 Doing “make clean” solves this problem. 3) On MacOS with —disable-intinf-asint and —enable-compact32bit, the ProofPower build fails like this: Assertion failed: (space != 0), function ScanObjectAddress, file quick_gc.cpp, line 414. 4) On Fedora with —enable-intinf-asint and —enable-compact32bit, the ProofPower build fails like this: pp-ml: quick_gc.cpp:414: virtual PolyObject* QuickGCScanner::ScanObjectAddress(PolyObject*): Assertion `space != 0' failed. I can attempt to give you cut-down code to reproduce (3) and (4) if the above error messages don’t give you enough of a clue. Regards, Rob. > On 21 Feb 2019, at 12:44, David Matthews <david.matth...@prolingua.co.uk> > wrote: > > The current version of Poly/ML is approaching the point of creating a new > release, 5.8. Makarius has run a lot of tests with Isabelle and various bugs > have been fixed. This has mainly affected the 32-bit object ID version for > 64-bits but some of the fixes will also have affected the native-address > versions. > > This is a last chance to test the current git master before release. Don't > forget to run "make compiler" at least twice after the initial "make" in > order to build the up-to-date compiler and recompile all the code with it. > This is particularly important if testing the --enable-compact32bit version. > Some extra checking was added during testing and there is a strong chance of > getting an assertion failure during the initial "make" or the first "make > compiler" due to a bug in the pre-built compiler. If this happens just rerun > the step. Once the compiler has been rebuilt it will incorporate a fix. > > David > > _______________________________________________ > polyml mailing list > polyml@inf.ed.ac.uk > http://lists.inf.ed.ac.uk/mailman/listinfo/polyml _______________________________________________ polyml mailing list polyml@inf.ed.ac.uk http://lists.inf.ed.ac.uk/mailman/listinfo/polyml