The current macro has some masth in it rihgt now, but would the 1st proposed fix for this (with the ?: macros) work any better than the 'index; (or whatever was used) work any better on all C compilers? It seems that the compiler must be able to resuce simple expressions into a constant, but how fat can you sucessfully push it and still work with most C compilers?
On Fri, Aug 7, 2015 at 10:47 AM, Mark Pizzolato - Info Comm < m...@infocomm.com> wrote: > Sorry folks. The problem occurs anywhere the SWMASK is used in a static > initializer. I’ve reverted the recent change. > > > > The change was initially thought to be benign and attempted to allows for > the simh source to be useful on systems with other than ASCII character > sets (i.e. EBCDIC). There are other issues with simulators running on > hosts with EBCDIC character sets which are unrelated to the source code. > If/when those are also addressed, we’ll revisit how to solve the non ASCII > source code issue as well. > > > > - Mark > > > > *From:* Simh [mailto:simh-boun...@trailing-edge.com] *On Behalf Of * > khandy21yo > *Sent:* Thursday, August 6, 2015 8:24 PM > *To:* Alan Frisbie <fris...@flying-disk.com>; SIMH@trailing-edge.com > *Subject:* Re: [Simh] Problem with default builds > > > > Wasnr rgere a recent change to tge SWMASK macro, > > Gcc peobably optimizes this reference, but dev c must not. > > > > > -------- Original message -------- > From Alan Frisbie <fris...@flying-disk.com> > Date: 08/06/2015 8:53 PM (GMT-07:00) > To SIMH@trailing-edge.com > Subject [Simh] Problem with default builds > > > Another build error. Unfortunately, I do not have the knowledge > to fix it myself. > > Today, 6-Aug-2015, I downloaded the current simh-master.zip from > github. > > My host is an Alpha XP1000 running VMS v8.4 > > Using MMK from the VMS Freeware 8 CD, I tried to do a default > build of all SIMH simulators. All went well until the build of > ID16-AXP.OLB Library. At that point I got the error: > > { "DP", SWMASK ('F'), 9, 0x32, o_DP0, o_DPF }, > ............^ > %CC-E-NEEDCONSTEXPR, In the initializer for dboot_tab[1].sw, > "sim_swmask(...)" is not constant, but occurs in a context that requires a > constant > expression. > at line number 318 in file > DKA200:[FRISBIE.SIMH.SIMH-MASTER.INTERDATA]ID16_DBOOT.C;4 > %MMK-F-ERRUPD, error status %X10B91262 occurred when updating > target SYS$DISK:[.BIN.VMS.LIB]ID16-AXP.OLB > > > The log of the build (with lots of successful stuff snipped) > follows below. > > Thanks, > Alan Frisbie > > -------------------------------------------------- > > $ unzip simh-master.zip > Archive: DKA200:[FRISBIE.SIMH]SIMH-MASTER.ZIP;5 > 7c7b44e409f05751c960a614dbb1e2abde22da60 > replace [.simh-master].gitattributes? [y]es, [n]o, [A]ll, [N]one, > [r]ename: A > > inflating: [.simh-master].gitattributes > inflating: [.simh-master].gitignore > inflating: [.simh-master]0readmeAsynchIO.txt > inflating: [.simh-master]0readme_39.txt > ... > inflating: [.simh-master.swtp6800.swtp6800]swtp6800mp-a2.ini > inflating: [.simh-master.swtp6800.swtp6800]swtp_defs.h > inflating: [.simh-master.swtp6800.swtp6800]swtp_swtbug_bin.h > $ > $ set default [.simh-master] > $ $ set file/attri=rfm:stm makefile,*.mms,[...]*.c,[...]*.h,[...]*.txt > $ > $ mmk > $! > $! Building The SYS$DISK:[.BIN.VMS.LIB]SIMH-NONET-AXP.OLB > Library. > $! > $ CC/DECC/PREF=ALL/DEBUG/OPT=(LEV=5)/ARCH=HOST > /NEST=PRIMARY/NAME=(AS_IS,SHORT)/DEF=("_LA > RGEFILE","SIM_ASYNCH_IO=1") /OBJ=SYS$DISK:[.BIN.VMS.LIB.BLD-AXP] > SYS$DISK:[]SIM_CONSOLE.C > > ,SYS$DISK:[]SIM_SOCK.C,SYS$DISK:[]SIM_TMXR.C,SYS$DISK:[]SIM_ETHER.C,SYS$DISK:[]SIM_TAPE.C, > > SYS$DISK:[]SIM_FIO.C,SYS$DISK:[]SIM_TIMER.C,SYS$DISK:[]SIM_DISK.C,SYS$DISK:[]SIM_SERIAL.C, > SYS$DISK:[]SIM_VIDEO.C > $ IF (F$SEARCH("SYS$DISK:[.BIN.VMS.LIB]SIMH-NONET-AXP.OLB").EQS."") > THEN LIBRARY/CREATE SYS$DISK:[.BIN.VMS.LIB]SIMH-NONET-AXP.OLB > $ LIBRARY/REPLACE SYS$DISK:[.BIN.VMS.LIB]SIMH-NONET-AXP.OLB > SYS$DISK:[.BIN.VMS.LIB.BLD-AXP]*.OBJ > $ DELETE/NOLOG/NOCONFIRM SYS$DISK:[.BIN.VMS.LIB.BLD-AXP]*.OBJ;* > $! > $! Building The SYS$DISK:[.BIN.VMS.LIB]ALTAIR-AXP.OLB Library. > ... > ... > $! IBM1130 done > $! > $! Building The SYS$DISK:[.BIN.VMS.LIB]ID16-AXP.OLB Library. > $! > $ CC/DECC/PREF=ALL/DEBUG/OPT=(LEV=5)/ARCH=HOST > /NEST=PRIMARY/NAME=(AS_IS,SHORT)/INCL=(SYS > $DISK:[],SYS$DISK:[.INTERDATA])/DEF=("_LARGEFILE","SIM_ASYNCH_IO=1") > /OBJ=SYS$DISK:[.BIN. > VMS.LIB.BLD-AXP] > SYS$DISK:[.INTERDATA]ID16_CPU.C,SYS$DISK:[.INTERDATA]ID16_SYS.C,SYS$DISK: > > [.INTERDATA]ID_DP.C,SYS$DISK:[.INTERDATA]ID_FD.C,SYS$DISK:[.INTERDATA]ID_FP.C,SYS$DISK:[.I > > NTERDATA]ID_IDC.C,SYS$DISK:[.INTERDATA]ID_IO.C,SYS$DISK:[.INTERDATA]ID_LP.C,SYS$DISK:[.INT > > ERDATA]ID_MT.C,SYS$DISK:[.INTERDATA]ID_PAS.C,SYS$DISK:[.INTERDATA]ID_PT.C,SYS$DISK:[.INTER > > DATA]ID_TT.C,SYS$DISK:[.INTERDATA]ID_UVC.C,SYS$DISK:[.INTERDATA]ID16_DBOOT.C,SYS$DISK:[.IN > TERDATA]ID_TTP.C > > { "DP", SWMASK ('F'), 9, 0x32, o_DP0, o_DPF }, > ............^ > %CC-E-NEEDCONSTEXPR, In the initializer for dboot_tab[1].sw, > "sim_swmask(...)" is not constant, but occurs in a context that requires a > constant > expression. > at line number 318 in file > DKA200:[FRISBIE.SIMH.SIMH-MASTER.INTERDATA]ID16_DBOOT.C;4 > %MMK-F-ERRUPD, error status %X10B91262 occurred when updating target > SYS$DISK:[.BIN.VMS.LI > B]ID16-AXP.OLB > $ > > -------------------------------------------------- > _______________________________________________ > Simh mailing list > Simh@trailing-edge.com > http://mailman.trailing-edge.com/mailman/listinfo/simh >
_______________________________________________ Simh mailing list Simh@trailing-edge.com http://mailman.trailing-edge.com/mailman/listinfo/simh