* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
@ 2004-04-23 0:21 ` pinskia at gcc dot gnu dot org
2004-05-05 20:21 ` hubicka at gcc dot gnu dot org
` (16 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-04-23 0:21 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-04-22 23:49 -------
Note this causes libjava to fail to build at -O1.
--
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |build
Summary|[3.4 Regression] |[3.4 Regression] [non unit-
|always_inline does not mix |at-a-time] always_inline
|with templates and -O0 |does not mix with templates
| |and -O0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
2004-04-23 0:21 ` [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] " pinskia at gcc dot gnu dot org
@ 2004-05-05 20:21 ` hubicka at gcc dot gnu dot org
2004-05-06 4:10 ` adam at yggdrasil dot com
` (15 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: hubicka at gcc dot gnu dot org @ 2004-05-05 20:21 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From hubicka at gcc dot gnu dot org 2004-05-05 20:21 -------
The problem here is that we do only in order inlining with -fno-unit-at-a-time.
The C++ frontend is deffering the functions until they are really used so the
Foo is not passed to cgraph code before main is called and thus it can't be
inlined.
I am not sure how to cope with this problem. (except for fact explaining
people that using Linux headers definig alwaysinline by default is bad idea).
Reorganizing C++ frontend to sanely finalize all functions and rely on cgraph
code to output only needed one is quite drastical step for 3.4.x series (tought
I definitly can try do it if it sounds sane - it basically means to add flag to
cgraph code teaching non-unit-at-a-time to not be too active about compiling
functions that don't seem to be needed and kill the non-unit-at-a-time code in
the C++ frontend. If we get lucky, this might work.)
Perhaps we can make always_inline failures warnings in non-unit-at-a-time
mentioning that alwyas_inline works reliably only in unit-at-a-time?
Concerning the always_inline&Linux kernel isses, perhaps we can either teach
fixincludes to fix that or do sanity check in the configure erroring out and
asking user to use glibc includes istead?
Honza
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |mark at codesourcery dot com
AssignedTo|unassigned at gcc dot gnu |hubicka at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
2004-04-23 0:21 ` [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] " pinskia at gcc dot gnu dot org
2004-05-05 20:21 ` hubicka at gcc dot gnu dot org
@ 2004-05-06 4:10 ` adam at yggdrasil dot com
2004-05-06 6:28 ` adam at yggdrasil dot com
` (14 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: adam at yggdrasil dot com @ 2004-05-06 4:10 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From adam at yggdrasil dot com 2004-05-06 04:10 -------
As far as I know, there is no "linux kernel issue" that is part of this bug.
The discussion of Linux kernel configurations and kernel memory leakage in bug
15040 only shows that at least some cases where this bug is produced succeed
when there is more virtual memory available.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (2 preceding siblings ...)
2004-05-06 4:10 ` adam at yggdrasil dot com
@ 2004-05-06 6:28 ` adam at yggdrasil dot com
2004-05-06 11:38 ` pinskia at gcc dot gnu dot org
` (13 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: adam at yggdrasil dot com @ 2004-05-06 6:28 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From adam at yggdrasil dot com 2004-05-06 06:28 -------
This bug report currently lists 3.5.0 on the "known to work" line. I assume
that there is no 3.5.0 release yet, but, rather a cvs branch somewhere. I was
wondering if anyone had actually reproduced the breakage under 3.4.0 and
verified that 3.5.0 succeeds in the same case.
I thought that I'd try to do that, but I get "connection timed out" when I try
to check out the cvs gcc-3_5-branch from savannah.gnu.org (following the
instructions at http://gcc.gnu.org/cvs.html ).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (3 preceding siblings ...)
2004-05-06 6:28 ` adam at yggdrasil dot com
@ 2004-05-06 11:38 ` pinskia at gcc dot gnu dot org
2004-06-22 10:36 ` cvs-commit at gcc dot gnu dot org
` (12 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-05-06 11:38 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-05-06 11:38 -------
Note tehe "3.5" branch is the top of the tree.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (4 preceding siblings ...)
2004-05-06 11:38 ` pinskia at gcc dot gnu dot org
@ 2004-06-22 10:36 ` cvs-commit at gcc dot gnu dot org
2004-06-22 15:39 ` pinskia at gcc dot gnu dot org
` (11 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2004-06-22 10:36 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2004-06-22 10:36 -------
Subject: Bug 14950
CVSROOT: /cvs/gcc
Module name: gcc
Branch: gcc-3_4-branch
Changes by: hubicka@gcc.gnu.org 2004-06-22 10:36:16
Modified files:
gcc/cp : ChangeLog pt.c
Log message:
PR C++/14950
* pt.c (instantiate_decl): Clean TI_PENDING_TEMPLATE_FLAG before
expanding the function.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.3892.2.126&r2=1.3892.2.127
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.816.2.32&r2=1.816.2.33
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (5 preceding siblings ...)
2004-06-22 10:36 ` cvs-commit at gcc dot gnu dot org
@ 2004-06-22 15:39 ` pinskia at gcc dot gnu dot org
2004-10-13 11:23 ` veksler at il dot ibm dot com
` (10 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-06-22 15:39 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-06-22 15:39 -------
Fixed.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (6 preceding siblings ...)
2004-06-22 15:39 ` pinskia at gcc dot gnu dot org
@ 2004-10-13 11:23 ` veksler at il dot ibm dot com
2004-10-13 11:34 ` pinskia at gcc dot gnu dot org
` (9 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: veksler at il dot ibm dot com @ 2004-10-13 11:23 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From veksler at il dot ibm dot com 2004-10-13 11:23 -------
I can still reproduce on 3.4.2 with the original test case,
using "g++ -g -c t.cpp".
There is a proposal in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950#c5
to stop support for always_inline + no-unit-at-a-time. But it is only
a proposal - no conscious decision was taken or documented.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|RESOLVED |REOPENED
Known to fail|3.4.0 |3.4.2
Known to work|4.0 3.3.3 |4.0.0 3.3.3
Resolution|FIXED |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (7 preceding siblings ...)
2004-10-13 11:23 ` veksler at il dot ibm dot com
@ 2004-10-13 11:34 ` pinskia at gcc dot gnu dot org
2004-10-31 2:43 ` mmitchel at gcc dot gnu dot org
` (8 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-10-13 11:34 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Severity|normal |minor
Target Milestone|3.4.1 |3.4.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (8 preceding siblings ...)
2004-10-13 11:34 ` pinskia at gcc dot gnu dot org
@ 2004-10-31 2:43 ` mmitchel at gcc dot gnu dot org
2005-01-26 16:22 ` jeanmichel dot gilbert at videotron dot ca
` (7 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2004-10-31 2:43 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From mmitchel at gcc dot gnu dot org 2004-10-31 02:43 -------
Postponed until GCC 3.4.4.
--
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|3.4.3 |3.4.4
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (9 preceding siblings ...)
2004-10-31 2:43 ` mmitchel at gcc dot gnu dot org
@ 2005-01-26 16:22 ` jeanmichel dot gilbert at videotron dot ca
2005-01-26 16:24 ` jeanmichel dot gilbert at videotron dot ca
` (6 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: jeanmichel dot gilbert at videotron dot ca @ 2005-01-26 16:22 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From jeanmichel dot gilbert at videotron dot ca 2005-01-26 16:22 -------
There is more to this bug than the compilation of code specified always_inline
at -O0. I have some template code that compiles fine at -O2 but gives lots of
inlining warning at -O1. Without template, it works OK. With template, it gives
the same warning as below (replacing sorry unimplemented with warning).
Here's a sample of the code :
class Vector
{
template <class T>
void Evaluate(const T& e)
{
v[0]=e[0];
v[1]=e[1];
v[2]=e[2];
}
};
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (10 preceding siblings ...)
2005-01-26 16:22 ` jeanmichel dot gilbert at videotron dot ca
@ 2005-01-26 16:24 ` jeanmichel dot gilbert at videotron dot ca
2005-02-12 23:18 ` pinskia at gcc dot gnu dot org
` (5 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: jeanmichel dot gilbert at videotron dot ca @ 2005-01-26 16:24 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From jeanmichel dot gilbert at videotron dot ca 2005-01-26 16:23 -------
Sorry I meant above.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (11 preceding siblings ...)
2005-01-26 16:24 ` jeanmichel dot gilbert at videotron dot ca
@ 2005-02-12 23:18 ` pinskia at gcc dot gnu dot org
2005-02-12 23:19 ` pinskia at gcc dot gnu dot org
` (4 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-12 23:18 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|hubicka at gcc dot gnu dot |unassigned at gcc dot gnu
|org |dot org
Status|REOPENED |NEW
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (12 preceding siblings ...)
2005-02-12 23:18 ` pinskia at gcc dot gnu dot org
@ 2005-02-12 23:19 ` pinskia at gcc dot gnu dot org
2005-03-02 6:53 ` pinskia at gcc dot gnu dot org
` (3 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-02-12 23:19 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-02-12 21:12 -------
Woops.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |hubicka at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (13 preceding siblings ...)
2005-02-12 23:19 ` pinskia at gcc dot gnu dot org
@ 2005-03-02 6:53 ` pinskia at gcc dot gnu dot org
2005-03-06 15:10 ` pinskia at gcc dot gnu dot org
` (2 subsequent siblings)
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-03-02 6:53 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-03-02 06:53 -------
*** Bug 20275 has been marked as a duplicate of this bug. ***
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |yuri at tsoft dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (14 preceding siblings ...)
2005-03-02 6:53 ` pinskia at gcc dot gnu dot org
@ 2005-03-06 15:10 ` pinskia at gcc dot gnu dot org
2005-05-19 17:39 ` mmitchel at gcc dot gnu dot org
2005-08-22 20:55 ` pinskia at gcc dot gnu dot org
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-03-06 15:10 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-03-06 15:10 -------
*** Bug 20340 has been marked as a duplicate of this bug. ***
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (15 preceding siblings ...)
2005-03-06 15:10 ` pinskia at gcc dot gnu dot org
@ 2005-05-19 17:39 ` mmitchel at gcc dot gnu dot org
2005-08-22 20:55 ` pinskia at gcc dot gnu dot org
17 siblings, 0 replies; 21+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-05-19 17:39 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|3.4.4 |3.4.5
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread
* [Bug c++/14950] [3.4 Regression] [non unit-at-a-time] always_inline does not mix with templates and -O0
2004-04-14 8:06 [Bug c++/14950] New: " veksler at il dot ibm dot com
` (16 preceding siblings ...)
2005-05-19 17:39 ` mmitchel at gcc dot gnu dot org
@ 2005-08-22 20:55 ` pinskia at gcc dot gnu dot org
17 siblings, 0 replies; 21+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-08-22 20:55 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-22 20:54 -------
*** Bug 23520 has been marked as a duplicate of this bug. ***
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |herring at lanl dot gov
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14950
^ permalink raw reply [flat|nested] 21+ messages in thread