[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Internal errors in g++



> 
> On Thu, 8 Jun 2000, Anton Ivanov wrote:
> 
> > 	I went through some trouble with the egcc from frozen yesterday. With any 
> > optimization levels g++ blows up on one the files from the current stable 
> > mysql.
> 
> It worked ok with -O0, if I remember correctly, but am not sure (it's been
> a very long time since I tried).
> 
> > 	I do not see any bugs filed versus it. File it?
> 
> Hmmm...good question.  I would say yes if we weren't sure that potato's
> g++ package would solve this, but I do know it works fine on potato (I
> compiled the potato mysql debs just two days ago with it).  I would file
> one anyway (normal priority) specifically mentioning "slink version" as
> being the problem.  I'll follow it up and mention that potato's version
> fixes it, so we can close it once potato is out.

Hi all,

I got around to test.

With the debian config it builds, while a normal ./configure ; make blows up. 
Difference seems to be in the compile flags. In other words obscure bug in 
g++. One more g++ bug one less... I will try to dig more info on it and 
possibly pass it up to gcc-bugs.

Detailed description:

mysql configure comes up with the following:
-DMYSQL_SERVER                      -DDEFAULT_MYSQL_HOME="\"/usr/local\"" 
-DDATADIR="\"/usr/local/var\""                    -DSHAREDIR="\"/usr/local/shar
e/mysql\""                         -DHAVE_CONFIG_H -I./../include          
-I./../regex                    -I. -I../include -I.. -I.    
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 
-DDBUG_OFF   -fno-implicit-templates

And happily blows up on sql_acl.cc

debuild compiles with the following:

g++ -DMYSQL_SERVER                      -DDEFAULT_MYSQL_HOME="\"/usr\"" 
-DDATADIR="\"/var/lib/mysql\""                  -DSHAREDIR="\"/usr/share/mysql\
"" -DHAVE_CONFIG_H -I./../include                        -I./../regex          
  -I. -I../include -I.. -I.    -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE 
-D_FILE_OFFSET_BITS=64 -O3 -DDBUG_OFF -O2 -fomit-frame-pointer 
-felide-constructors -fno-exceptions -fno-rtti  -fno-implicit-templates

And it builds.

The magic word is: -fno-exceptions which as usually is neither in the man nor 
in the info files.

stdrant on gcc and documentation omitted for brevity ;-)

Cheers,




Attachment: pgpY11BJm4cJ3.pgp
Description: PGP signature


Reply to: