delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2011/11/12/00:30:21

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
From: Rugxulo <rugxulo AT gmail DOT com>
Newsgroups: comp.lang.misc,comp.os.msdos.djgpp
Subject: Re: ANN: Seed7 Release 2011-11-11
Date: Fri, 11 Nov 2011 21:08:31 -0800 (PST)
Organization: http://groups.google.com
Lines: 321
Message-ID: <a9b37d4c-a83d-4d88-be23-174d4fe9072a@k10g2000yqn.googlegroups.com>
References: <7037d719-14a3-4e62-8ebc-0fdbdbdf1db1 AT r9g2000vbw DOT googlegroups DOT com>
NNTP-Posting-Host: 65.13.115.246
Mime-Version: 1.0
X-Trace: posting.google.com 1321074604 21434 127.0.0.1 (12 Nov 2011 05:10:04 GMT)
X-Complaints-To: groups-abuse AT google DOT com
NNTP-Posting-Date: Sat, 12 Nov 2011 05:10:04 +0000 (UTC)
Complaints-To: groups-abuse AT google DOT com
Injection-Info: k10g2000yqn.googlegroups.com; posting-host=65.13.115.246; posting-account=p5rsXQoAAAB8KPnVlgg9E_vlm2dvVhfO
User-Agent: G2/1.0
X-Google-Web-Client: true
X-Google-Header-Order: HNKRAUELSC
X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/534.16
(KHTML, like Gecko) Chrome/10.0.630.0 Safari/534.16,gzip(gfe)
Bytes: 14892
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id pAC5U2N3012308
Reply-To: djgpp AT delorie DOT com

Hi,

On Nov 11, 4:20 pm, tm <thomas DOT mer DOT  DOT  DOT  AT gmx DOT at> wrote:
>
> I have released a new version of Seed7: seed7_05_20111111.tgz

Remember me?  :-)  Yeah, about a year ago I hacked Seed7 to (barely)
work with DJGPP, at least the interpreter.

Long story short: I'm no comp. sci. major, I don't really know what
I'm doing, just too bored and curious for my own good ... too busy
with other crud, procrastinate too much, did spent a bit of time
learning bits of other languages (but, for no apparent reason, not
Seed7 ... yet, sorry!!), had some computer woes, some personal crud,
etc. I still browsed here (comp.lang.misc) occasionally and usually
downloaded the latest Seed7 sources but never did anything (though I
did notice you added a DJGPP makefile a few months back).

The Salmon guy was bragging about how portable his language was. Well,
long story short, it didn't work for me. I honestly didn't even want
to bother him with my opinions as I didn't think he cared. (Silly me
for including DOS under the portable spectrum, heheh.) And then I
figured I might as well give yours a go again (even if I failed), esp.
since I'd had partial success before.

The big problem with ANSI C (from my very weak perspective) is that,
while clearly being a huge success and accomplishing a lot, people
just "think" everything is portable when it's not. Basically you can't
assume anything. And the big problems in my book are always build-
related moreso than anything else. I hate complicated *nix makefiles
(usually relying on dozens of POSIX tools) or anything that relies on
a specific file system. That was also an issue here. I don't honestly
expect anyone to cater to "obsolete" file systems or OSes (like DOS),
but ... it would still be nice to not so heavily rely on
Super_long_filenames_that_conflict_in_first_eight_chars.TXT. More
importantly is weird things like makefiles, e.g. ones that have lines
greater than 1024 chars (eek). That is *very* rare in my experience,
though I've noticed GNU Emacs, Salmon, and now Seed7 doing it. Believe
it or not, my favorite text editor (TDE) seems to munge lines longer
than that, which is a curious error when you don't know what or how or
why. Ugh. (So I temporarily used VILE, works great!)

Basically my XP machine is half-dead, so I can't use that (though I
could use aunts' one night if really needed). I ended up running under
native FreeDOS w/ DOSLFN loaded. Not ideal as some things don't work
as well, if at all, but here it basically worked (surprisingly) ...
after a few minor tweaks. Yeah, I really should've tried this earlier,
but you never asked / nagged / emailed, so I didn't.

It mostly (but not fully) seems to work. I can't remember why DJGPP
will sometimes say "No swap space!" That's kinda weird, normally it's
obvious, but here it wasn't. (Yeah, I know, strerror() is the likely
culprit, but I didn't look any closer than that.)

Anyways, I hope this isn't too too long a reply, but here's the diff
for the Makefile (mandatory!) and (partially successful) output of "/
prg/hi chk_all":


--- mk_djgpp.mak	2011-10-11 01:38:30.000000000 -0500
+++ mk_djgpp.new	2011-11-11 22:38:28.000000000 -0600
@@ -6,7 +6,7 @@

 # CFLAGS = -O2 -fomit-frame-pointer -funroll-loops -Wall
 # CFLAGS = -O2 -fomit-frame-pointer -Wall -Wstrict-prototypes -
Winline -Wconversion -Wshadow -Wpointer-arith
-CFLAGS = -O2 -g -Wall -Wstrict-prototypes -Winline -Wconversion -
Wshadow -Wpointer-arith
+CFLAGS = -O2 -s -Wall -Wstrict-prototypes -Winline -Wconversion -
Wshadow -Wpointer-arith
 # CFLAGS = -O2 -g -pg -Wall -Wstrict-prototypes -Winline -Wconversion
-Wshadow -Wpointer-arith
 # CFLAGS = -O2 -Wall -Wstrict-prototypes -Winline -Wconversion -
Wshadow -Wpointer-arith
 # CFLAGS = -O2 -pg -Wall -Wstrict-prototypes -Winline -Wconversion -
Wshadow -Wpointer-arith
@@ -28,7 +28,7 @@
 ALL_S7_LIBS = ..\bin\$(COMPILER_LIB) ..\bin\$(COMP_DATA_LIB) ..\bin\$
(DRAW_LIB) ..\bin\$(CONSOLE_LIB) ..\bin\$(SEED7_LIB)
 # CC = g++
 CC = gcc
-GET_CC_VERSION_INFO = $(CC) --version >
+GET_CC_VERSION_INFO = $(CC) --version

 BIGINT_LIB_DEFINE = USE_BIG_RTL_LIBRARY
 BIGINT_LIB = big_rtl
@@ -104,8 +104,8 @@
 version.h:
 	echo #define ANSI_C > version.h
 	echo #define USE_DIRENT >> version.h
-	echo #define PATH_DELIMITER 92 /* backslash (ASCII) */ >> version.h
-	echo #define SEARCH_PATH_DELIMITER ';' >> version.h
+	echo #define PATH_DELIMITER 92 >> version.h
+	echo #define SEARCH_PATH_DELIMITER \';\' >> version.h
 	echo #define MAP_ABSOLUTE_PATH_TO_DRIVE_LETTERS >> version.h
 	echo #define CATCH_SIGNALS >> version.h
 	echo #define AWAIT_WITH_SELECT >> version.h
@@ -119,10 +119,11 @@
 	echo #define $(BIGINT_LIB_DEFINE) >> version.h
 	echo #define likely(x)   __builtin_expect((x),1) >> version.h
 	echo #define unlikely(x) __builtin_expect((x),0) >> version.h
-	$(GET_CC_VERSION_INFO) cc_vers.txt
-	echo #include "direct.h" > chkccomp.h
+#	$(GET_CC_VERSION_INFO) >cc_vers.txt
+	echo gcc.exe (GCC) 4.6.2 > cc_vers.txt
+	echo #include \"direct.h\" > chkccomp.h
 	echo #define mkdir(path,mode) mkdir(path) >> chkccomp.h
-	echo #define LIST_DIRECTORY_CONTENTS "dir" >> chkccomp.h
+	echo #define LIST_DIRECTORY_CONTENTS \"dir\" >> chkccomp.h
 	echo #define long_long_EXISTS >> chkccomp.h
 	echo #define long_long_SUFFIX_LL >> chkccomp.h
 	$(CC) chkccomp.c -lm -o chkccomp
@@ -130,23 +131,23 @@
 	del chkccomp.h
 	del chkccomp.exe
 	del cc_vers.txt
-	echo #define OBJECT_FILE_EXTENSION ".o" >> version.h
-	echo #define LIBRARY_FILE_EXTENSION ".a" >> version.h
-	echo #define EXECUTABLE_FILE_EXTENSION ".exe" >> version.h
-	echo #define C_COMPILER "$(CC)" >> version.h
-	echo #define GET_CC_VERSION_INFO "$(GET_CC_VERSION_INFO)" >>
version.h
-	echo #define CC_OPT_DEBUG_INFO "-g" >> version.h
-	echo #define CC_OPT_NO_WARNINGS "-w" >> version.h
-	echo #define LINKER_OPT_OUTPUT_FILE "-o " >> version.h
-	echo #define LINKER_FLAGS "$(LDFLAGS)" >> version.h
-	echo #define SYSTEM_LIBS "$(SYSTEM_LIBS)" >> version.h
-	echo #define SYSTEM_CONSOLE_LIBS "$(SYSTEM_CONSOLE_LIBS)" >>
version.h
-	echo #define SYSTEM_DRAW_LIBS "$(SYSTEM_DRAW_LIBS)" >> version.h
-	echo #define SEED7_LIB "$(SEED7_LIB)" >> version.h
-	echo #define CONSOLE_LIB "$(CONSOLE_LIB)" >> version.h
-	echo #define DRAW_LIB "$(DRAW_LIB)" >> version.h
-	echo #define COMP_DATA_LIB "$(COMP_DATA_LIB)" >> version.h
-	echo #define COMPILER_LIB "$(COMPILER_LIB)" >> version.h
+	echo #define OBJECT_FILE_EXTENSION \".o\" >> version.h
+	echo #define LIBRARY_FILE_EXTENSION \".a\" >> version.h
+	echo #define EXECUTABLE_FILE_EXTENSION \".exe\" >> version.h
+	echo #define C_COMPILER \"$(CC)\" >> version.h
+	echo #define GET_CC_VERSION_INFO \"echo gcc.exe (GCC) 4.6.2 \" >>
version.h
+	echo #define CC_OPT_DEBUG_INFO \"-g\" >> version.h
+	echo #define CC_OPT_NO_WARNINGS \"-w\" >> version.h
+	echo #define LINKER_OPT_OUTPUT_FILE \"-o \" >> version.h
+	echo #define LINKER_FLAGS \"$(LDFLAGS)\" >> version.h
+	echo #define SYSTEM_LIBS \"$(SYSTEM_LIBS)\" >> version.h
+	echo #define SYSTEM_CONSOLE_LIBS \"$(SYSTEM_CONSOLE_LIBS)\" >>
version.h
+	echo #define SYSTEM_DRAW_LIBS \"$(SYSTEM_DRAW_LIBS)\" >> version.h
+	echo #define SEED7_LIB \"$(SEED7_LIB)\" >> version.h
+	echo #define CONSOLE_LIB \"$(CONSOLE_LIB)\" >> version.h
+	echo #define DRAW_LIB \"$(DRAW_LIB)\" >> version.h
+	echo #define COMP_DATA_LIB \"$(COMP_DATA_LIB)\" >> version.h
+	echo #define COMPILER_LIB \"$(COMPILER_LIB)\" >> version.h
 	echo #define STACK_SIZE_DEFINITION unsigned _stklen = 4194304 >>
version.h
 	$(CC) -o setpaths setpaths.c
 	.\setpaths.exe >> version.h



HI INTERPRETER Version 4.5.8856  Copyright (c) 1990-2011 Thomas Mertes
compiling the compiler - okay
chkint - okay
chkflt
 *** The interpreted chkflt does not work okay:

Comparison of float values works correct.
Compare of float values works correct.
Decimal conversion of float works correct.
Conversion from integer to float works correct.
Truncation of float works correct.
Addition works correct for selected values.
A ** B works correct for selected values.
A ** B with integer B works correct for selected values.
Infinity works correct for selected values.
 ***** NaN is not returned as error value for math functions
 ***** NaN does not work correct
Negative zero does work correct.


 *** The compiled chkflt does not work okay:

Comparison of float values works correct.
Compare of float values works correct.
Decimal conversion of float works correct.
Conversion from integer to float works correct.
Truncation of float works correct.
Addition works correct for selected values.
A ** B works correct for selected values.
A ** B with integer B works correct for selected values.
Infinity works correct for selected values.
 ***** NaN is not returned as error value for math functions
 ***** NaN does not work correct
Negative zero does work correct.

chkstr - okay
chkprc - okay
chkbig
 *** The interpreted compiler was not able to compile chkbig

 *** The compiled compiler was not able to compile chkbig
chkbool - okay
chkset
 *** The interpreted compiler was not able to compile chkset

 *** The compiled compiler was not able to compile chkset
chkexc
 *** The interpreted chkexc does not work okay:

Integer exceptions work correct.
BigInteger exceptions work correct.
Floating point exceptions work correct.
String exceptions work correct.
Array exceptions work correct.
 ***** gets from write only file succeeded
 ***** gets from write only file succeeded
 ***** getln from write only file succeeded
 ***** getwd from write only file succeeded
 ***** gets from UTF-8 write only file succeeded
 ***** gets from UTF-8 write only file succeeded
 ***** getln from UTF-8 write only file succeeded
 ***** getwd from UTF-8 write only file succeeded
 ***** length for pipe succeeded
 ***** bigLength for pipe succeeded
 ***** seek for pipe succeeded
 ***** seek for pipe succeeded
 ***** tell for pipe succeeded
 ***** bigTell for pipe succeeded
 ***** length for pipe succeeded
 ***** bigLength for pipe succeeded
 ***** seek for pipe succeeded
 ***** seek for pipe succeeded
 ***** tell for pipe succeeded
 ***** bigTell for pipe succeeded
 ***** File exceptions do not work correct

seek(STD_IN, 0) raises RANGE_ERROR
gets(STD_IN, -1) raises RANGE_ERROR
test_func(1 div 0) raises NUMERIC_ERROR
1 div 0 = 0 and TRUE raises NUMERIC_ERROR
1 div 0 = 0 and FALSE raises NUMERIC_ERROR
TRUE and 1 div 0 = 0 raises NUMERIC_ERROR
1 div 0 = 0 or TRUE raises NUMERIC_ERROR
1 div 0 = 0 or FALSE raises NUMERIC_ERROR
FALSE or 1 div 0 = 0 raises NUMERIC_ERROR
if 1 div 0 raises NUMERIC_ERROR
1 div 0 in if then raises NUMERIC_ERROR
1 div 0 in if else raises NUMERIC_ERROR
while 1 div 0 raises NUMERIC_ERROR
1 div 0 in while raises NUMERIC_ERROR
repeat until 1 div 0 raises NUMERIC_ERROR
1 div 0 in repeat raises NUMERIC_ERROR


 *** The compiled chkexc does not work okay:

Integer exceptions work correct.
BigInteger exceptions work correct.
Floating point exceptions work correct.
String exceptions work correct.
Array exceptions work correct.
 ***** gets from write only file succeeded
 ***** gets from write only file succeeded
 ***** getln from write only file succeeded
 ***** getwd from write only file succeeded
 ***** gets from UTF-8 write only file succeeded
 ***** gets from UTF-8 write only file succeeded
 ***** getln from UTF-8 write only file succeeded
 ***** getwd from UTF-8 write only file succeeded
 ***** length for pipe succeeded
 ***** bigLength for pipe succeeded
 ***** seek for pipe succeeded
 ***** seek for pipe succeeded
 ***** tell for pipe succeeded
 ***** bigTell for pipe succeeded
 ***** length for pipe succeeded
 ***** bigLength for pipe succeeded
 ***** seek for pipe succeeded
 ***** seek for pipe succeeded
 ***** tell for pipe succeeded
 ***** bigTell for pipe succeeded
 ***** File exceptions do not work correct

seek(STD_IN, 0) raises RANGE_ERROR
gets(STD_IN, -1) raises RANGE_ERROR
test_func(1 div 0) raises NUMERIC_ERROR
1 div 0 = 0 and TRUE raises NUMERIC_ERROR
1 div 0 = 0 and FALSE raises NUMERIC_ERROR
TRUE and 1 div 0 = 0 raises NUMERIC_ERROR
1 div 0 = 0 or TRUE raises NUMERIC_ERROR
1 div 0 = 0 or FALSE raises NUMERIC_ERROR
FALSE or 1 div 0 = 0 raises NUMERIC_ERROR
if 1 div 0 raises NUMERIC_ERROR
1 div 0 in if then raises NUMERIC_ERROR
1 div 0 in if else raises NUMERIC_ERROR
while 1 div 0 raises NUMERIC_ERROR
1 div 0 in while raises NUMERIC_ERROR
repeat until 1 div 0 raises NUMERIC_ERROR
1 div 0 in repeat raises NUMERIC_ERROR


EDIT: I think?? "hi.exe" (interpreter) was successful with running
chkbig, chkset (but fails for the compiler??).


 Directory of G:\DJGPP\MANIFEST

GCC462B  MFT         3,265  10-29-11 10:34a gcc462b.mft
BNU2211B MFT         1,830  08-05-11 10:37p bnu2211b.mft
DJDEV204 MFT         3,484  11-30-03  7:41p djdev204.mft
BSH205~1 MFT           449  09-22-09 10:48p bsh205bbr3.mft
MAK381B  MFT           196  11-24-07  7:43a mak381b.mft
SED421B  MFT           175  11-22-09  7:20a sed421b.mft
FIL41B   MFT         1,367  12-15-03 10:03p fil41b.mft
TXT20B   MFT           932  12-15-03 10:05p txt20b.mft
SHL2011B MFT         1,405  12-15-03 10:05p shl2011b.mft
FND423~1 MFT           560  06-27-08  4:33p fnd4233br4.mft
PDCUR34A MFT           352  10-08-08 10:19p pdcur34a.mft

(Hope this helps, sorry if not or too long!)

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019