Bug 4025

Summary: Document use/non-use of -fno-implicit-templates in bootflags
Product: gcc Reporter: gbsadler1
Component: c++Assignee: Not yet assigned to anyone <unassigned>
Status: RESOLVED FIXED    
Severity: normal CC: gbsadler1, gcc-bugs, gdr, James.W.Mckelvey, mark, sandra, webrown.cpp
Priority: P3 Keywords: documentation
Version: 3.0   
Target Milestone: ---   
Host: Target:
Build: Known to work:
Known to fail: Last reconfirmed: 2005-12-11 21:50:50
Attachments: java.err.tar.gz

Description gbsadler1 2001-08-14 17:36:01 UTC
Attached is the result of running the compile line from my 
build log with -v -save-temps >jvconvert.err 2>&1 added. Then I 
tarred that together with the .s and .i that were produced.
Oddly, the temps are from BytesToUnicodemain...

This has been the case for me since Friday 10 Aug, with daily
attempts. See http://gcc.gnu.org/ml/java/2001-08/msg00048.html

Release:
gcc-3_0-branch

Environment:
Debian linux 2.2.19 (unstable dist)

How-To-Repeat:
Initial compiler is gcc 2.95.4 20010810 (Debian prerelease)
This is the script I've been using to bootstrap with:
#!/bin/sh

export CFLAGS='-Os -march=i686' 
export CXXFLAGS='-Os -march=i686 -fno-implicit-templates' 
export STAGE1_CFLAGS='-Os -march=i686' 
export BOOT_CFLAGS='-g -Os -march=i686' 
export TCFLAGS='-g -Os -march=athlon' 
export OPTIMIZE_CXXFLAGS='-g -Os -march=athlon -fno-implicit-templates' 
export TCL_LIBRARY="/usr/lib/tcl8.3"
export DEJAGNULIBS="/usr/share/dejagnu"

/usr/src/cvs/gcc-3.0/configure --verbose --enable-threads=posix --with-system-zlib \
 --enable-shared --disable-nls --enable-checking > conf.log 2>&1

make -e bootstrap > build.log 2>&1

make -k -e check > test.log 2>&1

make -k -e mail-report-with-warnings.log
Comment 1 gbsadler1 2001-08-14 17:36:01 UTC
Fix:
Not positive. I held off reporting via gnats as there was
discussion about fixing a problem with reload1.c, which Jan
Hubicka (sp?) fixed. Then further discussion about another
change someone made prior to leaving on vacation.
However, this has happened every day since Friday for me with
a fresh cvs update every day at 3AM CDT.
Comment 2 Mark Mitchell 2001-08-14 18:07:37 UTC
From: Mark Mitchell <mark@codesourcery.com>
To: "gbsadler1@lcisp.com" <gbsadler1@lcisp.com>,
   "gcc-gnats@gcc.gnu.org" <gcc-gnats@gcc.gnu.org>
Cc:  
Subject: Re: bootstrap/4025: Bootstrap fails to create jv-convert (undefined
 refs)
Date: Tue, 14 Aug 2001 18:07:37 -0700

 > export CXXFLAGS='-Os -march=i686 -fno-implicit-templates'
 > export OPTIMIZE_CXXFLAGS='-g -Os -march=athlon -fno-implicit-templates'
 
 It is not safe to use -fno-implicit-templates in CXXFLAGS.  Would you
 try again without those flags, please?
 
 -- 
 Mark Mitchell                mark@codesourcery.com
 CodeSourcery, LLC            http://www.codesourcery.com

Comment 3 gbsadler1 2001-08-14 23:22:29 UTC
From: Gordon Sadler <gbsadler1@lcisp.com>
To: "gcc-gnats@gcc.gnu.org" <gcc-gnats@gcc.gnu.org>
Cc:  
Subject: Re: bootstrap/4025: Bootstrap fails to create jv-convert (undefined refs)
Date: Tue, 14 Aug 2001 23:22:29 -0500

 On Tue, Aug 14, 2001 at 06:07:37PM -0700, Mark Mitchell wrote:
 > 
 > 
 > > export CXXFLAGS='-Os -march=i686 -fno-implicit-templates'
 > > export OPTIMIZE_CXXFLAGS='-g -Os -march=athlon -fno-implicit-templates'
 > 
 > It is not safe to use -fno-implicit-templates in CXXFLAGS.  Would you
 > try again without those flags, please?
 > 
 That does indeed correct the problem. Strange, it was/is still working
 on mainline and worked until Friday on the branch.
 
 Perhaps there should be a configure test to detect/warn about the use of
 the switch? At the least on the libstdc++/documentation/configopts
 website?
 
 -- 
 Gordon Sadler
 

Comment 4 Gabriel Dos Reis 2001-08-15 12:44:22 UTC
From: Gabriel Dos Reis <gdr@codesourcery.com>
To: Gordon Sadler <gbsadler1@lcisp.com>
Cc: nobody@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Subject: Re: bootstrap/4025: Bootstrap fails to create jv-convert (undefined refs)
Date: 15 Aug 2001 12:44:22 +0200

 Gordon Sadler <gbsadler1@lcisp.com> writes:
 
 |  > > export CXXFLAGS='-Os -march=i686 -fno-implicit-templates'
 |  > > export OPTIMIZE_CXXFLAGS='-g -Os -march=athlon -fno-implicit-templates'
 |  > 
 |  > It is not safe to use -fno-implicit-templates in CXXFLAGS.  Would you
 |  > try again without those flags, please?
 |  > 
 |  That does indeed correct the problem. Strange, it was/is still working
 |  on mainline and worked until Friday on the branch.
 |  
 |  Perhaps there should be a configure test to detect/warn about the use of
 |  the switch? At the least on the libstdc++/documentation/configopts
 |  website?
 
 We went though this sometime ago -- -fno-implicit-templates should not
 be used unless there is very specific reasons to do so; but then you
 have a global idea of what is going on.  
 
 Yes, it is probably a good idea to add some text to that effect on our
 documentation. 
 
 -- Gaby
 CodeSourcery, LLC                       http://www.codesourcery.com
Comment 5 Wolfgang Bangerth 2003-03-07 02:20:27 UTC
State-Changed-From-To: open->analyzed
State-Changed-Why: Analyzed long ago. Validity of claim also decided positively by Gaby.
Comment 6 Andrew Pinski 2003-08-18 03:10:05 UTC
The building documenation talks about -fno-implicit-templates in LIBCXXFLAGS only.
I do not know if this counts as being fixed or if that still works.
Comment 7 Andrew Pinski 2004-07-09 04:56:03 UTC
*** Bug 16140 has been marked as a duplicate of this bug. ***
Comment 8 sandra 2018-11-17 16:06:16 UTC
Author: sandra
Date: Sat Nov 17 16:05:45 2018
New Revision: 266239

URL: https://gcc.gnu.org/viewcvs?rev=266239&root=gcc&view=rev
Log:
2018-11-17  Sandra Loosemore  <sandra@codesourcery.com>

	PR c++/4025

	gcc/
	* doc/invoke.texi (C++ Dialect Options): Clarify usage of
	-fno-implicit-templates.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/doc/invoke.texi
Comment 9 sandra 2018-11-17 16:17:25 UTC
Fixed, finally.  It only took 17 years.  :-P