delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1999/01/28/10:50:23

Message-ID: <B0000068132@stargate.astr.lu.lv>
From: "Andris Pavenis" <pavenis AT lanet DOT lv>
To: djgpp-workers AT delorie DOT com
Date: Thu, 28 Jan 1999 17:49:59 +0200
MIME-Version: 1.0
Subject: Re: Templates, namespaces
CC: "Mark E." <snowball3 AT usa DOT net>
In-reply-to: <3.0.6.32.19990128062943.00814b20@pop.netaddress.com>
References: <16743 DOT 990127 AT bspu DOT unibel DOT by>
X-mailer: Pegasus Mail for Win32 (v3.01d)
Reply-To: djgpp-workers AT delorie DOT com

--Message-Boundary-20012
Content-type: text/plain; charset=US-ASCII
Content-transfer-encoding: 7BIT
Content-description: Mail message body

On 28 Jan 99, at 6:29, Paul Derbyshire wrote:

> At 05:50 PM 1/27/99 +0200, you wrote:
> >EGCS 1.1 has support for namespaces, and it works good enough.
> >Unfortunately, EGCS has bugs in exception handling so it is unusable
> >for C++ programing.
> 
> **********. They'd just gotten exception handling *fixed*... any
> estimate on when the bugs'll be fixed? What about template instantiation,
> with which GCC 2.8.1 has major problems?

I don't think such messages don't help anybody. I'm moving discussion to djgpp-
workers.

Anyway there is one interesting thing with STL  I should mention. 
Version of collect2.exe with patches from Mark E. sometimes fails to recompile 
source and resolve template problems. 

About a week ago I built egcs-2.93.02 19990117 snapshot for DJGPP (for collect2
I simply transfered these patches, I had to do that manually as patch failed)
Now I see that now finally collect2 works Ok. I tried to copy this version of 
collect2.exe to egcs-1.1.1 directory and now it seems to work also there 
(original collect2 from gcce111b.zip failed to do that)

Of course fragments from development snapshots should not released 
to general public. 

Unfortunately I tested this after I already have deleted sources of egcs-19990117.
However I kept patches I applied for earlier snapshot (I'm using the same 
approach as before: big script that patches egcs sources for building for DJGPP)

Perhaps I'll try to reproduce this later with some snapshot.

 But for now I'm giving links to 2 files:
	
	http://www.lanet.lv/~pavenis/as-990120-bfd.exe

		GNU Assembler from 20th January binutils snapshot built as
		BFD assembler (I cannot do that with binutils-2.9.1 as I'm getting
		broken executable). Exceptions support is mostly Ok in egcs-1.1.1 
		when this binary is used instead of one from binutils-2.8.1 or
		2.9.1. I should thank Lazlo Molnar for finding real source of problems
		with C++ exceptions.

	http://www.lanet.lv/~pavenis/collect2.exe

		Colect2.exe from my DJGPP build of egcs-19990117. Please test whether
		it solves template instantiation problems in STL (when -frepo is being
		used). At least one example which failed with collect2 from gcce111b.zip
		now builds.

If this all works Ok seems that 2 major problems with egcs-1.1.1 are solved.
I'm including test example for -frepo 

Andris

--Message-Boundary-20012
Content-type: text/plain; charset=US-ASCII
Content-disposition: inline
Content-description: Attachment information.

The following section of this message contains a file attachment
prepared for transmission using the Internet MIME message format.
If you are using Pegasus Mail, or any another MIME-compliant system,
you should be able to save it or view it from within your mailer.
If you cannot, please ask your system administrator for assistance.

   ---- File information -----------
     File:  Makefile
     Date:  28 Jan 1999, 17:06
     Size:  483 bytes.
     Type:  Text

--Message-Boundary-20012
Content-type: Application/Octet-stream; name="Makefile"; type=Text
Content-disposition: attachment; filename="Makefile"

all:	ropetest.exe

ropetest.cc:
	rm -f ropetest.cc
	echo '#include <rope>' >>ropetest.cc
	echo '' >>ropetest.cc
	echo 'rope <char> xx;' >>ropetest.cc
	echo '' >>ropetest.cc
	echo 'int main (void) { return 0; }' >>ropetest.cc

ropetest.exe:  ropetest.o
	gcc -save-temps -v ropetest.o -lstdcxx -o ropetest.exe

ropetest.o: ropetest.cc
	gcc -save-temps -v -O3 -c -frepo -IC:/DJGPP/LANG/CXX ropetest.cc

clean:	
	rm -vf ropetest.o ropetest.rpo ropetest.exe ropetest.cc
--Message-Boundary-20012
Content-type: text/plain; charset=US-ASCII
Content-disposition: inline
Content-description: Attachment information.

The following section of this message contains a file attachment
prepared for transmission using the Internet MIME message format.
If you are using Pegasus Mail, or any another MIME-compliant system,
you should be able to save it or view it from within your mailer.
If you cannot, please ask your system administrator for assistance.

   ---- File information -----------
     File:  make.log
     Date:  28 Jan 1999, 17:49
     Size:  6350 bytes.
     Type:  Text

--Message-Boundary-20012
Content-type: Application/Octet-stream; name="make.log"; type=Text
Content-disposition: attachment; filename="make.log"

rm -f ropetest.cc
echo '#include <rope>' >>ropetest.cc
echo '' >>ropetest.cc
echo 'rope <char> xx;' >>ropetest.cc
echo '' >>ropetest.cc
echo 'int main (void) { return 0; }' >>ropetest.cc
gcc -save-temps -v -O3 -c -frepo -IC:/DJGPP/LANG/CXX ropetest.cc
Reading specs from c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/specs
gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release)
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/cpp.exe -lang-c++ -v -IC:/DJGPP/LANG/CXX -isystem c:/djgpp/bin/include -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=91 -Dunix -Di386 -DGO32 -DMSDOS -DDJGPP=2 -D__unix__ -D__i386__ -D__GO32__ -D__MSDOS__ -D__DJGPP__=2 -D__unix -D__i386 -D__GO32 -D__MSDOS -D__DJGPP=2 -Asystem(unix) -Asystem(msdos) -Acpu(i386) -Amachine(i386) -D__EXCEPTIONS -D__OPTIMIZE__ ropetest.cc ropetest.ii
GNU CPP version egcs-2.91.60 19981201 (egcs-1.1.1 release) (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
 C:/DJGPP/LANG/CXX
 c:/djgpp/contrib/grx23/include
 c:/djgpp/lang/cxx
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/include
 c:/djgpp/include
End of search list.
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/cc1plus.exe ropetest.ii -quiet -dumpbase ropetest.cc -O3 -version -frepo -o ropetest.s
GNU C++ version egcs-2.91.60 19981201 (egcs-1.1.1 release) (djgpp) compiled by GNU C version egcs-2.91.60 19981201 (egcs-1.1.1 release).
In file included from C:/DJGPP/LANG/CXX/stl_rope.h:2107,
                 from C:/DJGPP/LANG/CXX/rope:26,
                 from ropetest.cc:1:
C:/DJGPP/LANG/CXX/ropeimpl.h:1085: warning: decimal integer constant is so large that it is unsigned
 c:/djgpp/bin/as.exe -o ropetest.o ropetest.s
gcc -save-temps -v ropetest.o -lstdcxx -o ropetest.exe
Reading specs from c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/specs
gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release)
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/collect2.exe -o ropetest.exe c:/djgpp/lib/crt0.o -Lc:/djgpp/lib -Lc:/djgpp/lib/gcc-lib/djgpp/egcs-291.60 -Lc:/djgpp/bin -Lc:/djgpp/lib ropetest.o -lstdcxx -lgcc -lc -lgcc -Tdjgpp.djl
collect: recompiling ropetest.cc
Reading specs from c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/specs
gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release)
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/cpp.exe -lang-c++ -v -IC:/DJGPP/LANG/CXX -isystem c:/djgpp/bin/djgpp/egcs-291.60/include -isystem c:/djgpp/bin/include -isystem c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/include -isystem c:/djgpp/lib/gcc-lib/djgpp/include -isystem /usr/lib/gcc/djgpp/egcs-291.60/include -isystem /usr/lib/gcc/djgpp/include -isystem c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/$djdir/djgpp/bin/djgpp/egcs-291.60/include -isystem c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/$djdir/djgpp/bin/include -isystem c:/djgpp/bin/djgpp/egcs-291.60/include -isystem c:/djgpp/bin/include -isystem c:/djgpp/bin/include -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=91 -Dunix -Di386 -DGO32 -DMSDOS -DDJGPP=2 -D__unix__ -D__i386__ -D__GO32__ -D__MSDOS__ -D__DJGPP__=2 -D__unix -D__i386 -D__GO32 -D__MSDOS -D__DJGPP=2 -Asystem(unix) -Asystem(msdos) -Acpu(i386) -Amachine(i386) -D__EXCEPTIONS -D__OPTIMIZE__ ropetest.cc ropetest.ii
GNU CPP version egcs-2.91.60 19981201 (egcs-1.1.1 release) (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
 C:/DJGPP/LANG/CXX
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/include
 c:/djgpp/contrib/grx23/include
 c:/djgpp/lang/cxx
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/include
 c:/djgpp/include
End of search list.
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/cc1plus.exe ropetest.ii -quiet -dumpbase ropetest.cc -O3 -version -frepo -o ropetest.s
GNU C++ version egcs-2.91.60 19981201 (egcs-1.1.1 release) (djgpp) compiled by GNU C version egcs-2.91.60 19981201 (egcs-1.1.1 release).
In file included from C:/DJGPP/LANG/CXX/stl_rope.h:2107,
                 from C:/DJGPP/LANG/CXX/rope:26,
                 from ropetest.cc:1:
C:/DJGPP/LANG/CXX/ropeimpl.h:1085: warning: decimal integer constant is so large that it is unsigned
 c:/djgpp/bin/as.exe -o ropetest.o ropetest.s
collect: relinking
collect: recompiling ropetest.cc
Reading specs from c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/specs
gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release)
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/cpp.exe -lang-c++ -v -IC:/DJGPP/LANG/CXX -isystem c:/djgpp/bin/djgpp/egcs-291.60/include -isystem c:/djgpp/bin/include -isystem c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/include -isystem c:/djgpp/lib/gcc-lib/djgpp/include -isystem /usr/lib/gcc/djgpp/egcs-291.60/include -isystem /usr/lib/gcc/djgpp/include -isystem c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/$djdir/djgpp/bin/djgpp/egcs-291.60/include -isystem c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/$djdir/djgpp/bin/include -isystem c:/djgpp/bin/djgpp/egcs-291.60/include -isystem c:/djgpp/bin/include -isystem c:/djgpp/bin/include -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=91 -Dunix -Di386 -DGO32 -DMSDOS -DDJGPP=2 -D__unix__ -D__i386__ -D__GO32__ -D__MSDOS__ -D__DJGPP__=2 -D__unix -D__i386 -D__GO32 -D__MSDOS -D__DJGPP=2 -Asystem(unix) -Asystem(msdos) -Acpu(i386) -Amachine(i386) -D__EXCEPTIONS -D__OPTIMIZE__ ropetest.cc ropetest.ii
GNU CPP version egcs-2.91.60 19981201 (egcs-1.1.1 release) (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
 C:/DJGPP/LANG/CXX
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/include
 c:/djgpp/contrib/grx23/include
 c:/djgpp/lang/cxx
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/include
 c:/djgpp/include
End of search list.
 c:/djgpp/lib/gcc-lib/djgpp/egcs-291.60/cc1plus.exe ropetest.ii -quiet -dumpbase ropetest.cc -O3 -version -frepo -o ropetest.s
GNU C++ version egcs-2.91.60 19981201 (egcs-1.1.1 release) (djgpp) compiled by GNU C version egcs-2.91.60 19981201 (egcs-1.1.1 release).
In file included from C:/DJGPP/LANG/CXX/stl_rope.h:2107,
                 from C:/DJGPP/LANG/CXX/rope:26,
                 from ropetest.cc:1:
C:/DJGPP/LANG/CXX/ropeimpl.h:1085: warning: decimal integer constant is so large that it is unsigned
 c:/djgpp/bin/as.exe -o ropetest.o ropetest.s
collect: relinking
 c:/djgpp/bin/stubify.exe -v ropetest.exe
stubify for djgpp V2.X executables, Copyright (C) 1995 DJ Delorie
stubify: ropetest.exe -> ropetest.000 -> ropetest.exe




--Message-Boundary-20012--

- Raw text -


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