public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation
@ 2007-03-02 16:46 v dot lesk at ic dot ac dot uk
2007-03-02 17:02 ` [Bug c++/31027] " v dot lesk at ic dot ac dot uk
` (12 more replies)
0 siblings, 13 replies; 14+ messages in thread
From: v dot lesk at ic dot ac dot uk @ 2007-03-02 16:46 UTC (permalink / raw)
To: gcc-bugs
Compiler segfaults in simple virtual inheritance situation. If inheritance is
changed to non-virtual then code compiles correctly. Also code compiles
correctly if seemingly irrelevant bits of code are removed.
No headers are required for the code to trigger the bug and none are provided.
--
Summary: Compiler segfaults in simple virtual inheritance
situation
Product: gcc
Version: 4.1.1
Status: UNCONFIRMED
Severity: blocker
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: v dot lesk at ic dot ac dot uk
GCC build triplet: i586-mandriva-linux-gnu
GCC host triplet: i586-mandriva-linux-gnu
GCC target triplet: i586-mandriva-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
@ 2007-03-02 17:02 ` v dot lesk at ic dot ac dot uk
2007-03-02 17:03 ` v dot lesk at ic dot ac dot uk
` (11 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: v dot lesk at ic dot ac dot uk @ 2007-03-02 17:02 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from v dot lesk at ic dot ac dot uk 2007-03-02 17:02 -------
//Couldnt include attachment so attaching (short) code here. See next comment
for compiler output.
class A
{
private:
protected:
public:
};
template<typename T>
class C:
virtual public A
{
private:
protected:
public:
C();
template<typename T_OTHER>C(const C<T_OTHER>&);
C func(const class C<long>&)const;
operator bool(void)const;
};
template<typename T>
C<T>::
C()
{
}
template<typename T>
template<typename T_OTHER>
C<T>::
C(const C<T_OTHER>&a)
{
}
template<typename T>
C<T>
C<T>::
func(const class C<long>&)const
{
C<T>result;
return result;
}
template<typename T>
class D:
public C<T>
{
private:
protected:
public:
void func2(void);
};
template<typename T>
void
D<T>::
func2(void)
{
C<int>a;
a.func(a);
}
void func3(void)
{
C<int>a;
a.func(a);
}
int
main(int argc,const char*const*argv)
{
return 0;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
2007-03-02 17:02 ` [Bug c++/31027] " v dot lesk at ic dot ac dot uk
@ 2007-03-02 17:03 ` v dot lesk at ic dot ac dot uk
2007-03-02 17:45 ` pinskia at gcc dot gnu dot org
` (10 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: v dot lesk at ic dot ac dot uk @ 2007-03-02 17:03 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2477 bytes --]
------- Comment #2 from v dot lesk at ic dot ac dot uk 2007-03-02 17:03 -------
Compiler command and output for this bug :
g++ -v -save-temps -c -O0 ./source.C
Using built-in specs.
Target: i586-mandriva-linux-gnu
Configured with: ../configure --prefix=/usr --libexecdir=/usr/lib
--with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info
--enable-shared --enable-threads=posix --enable-checking=release
--enable-languages=c,c++,ada,fortran,objc,obj-c++,java
--host=i586-mandriva-linux-gnu --with-cpu=generic --with-system-zlib
--enable-long-long --enable-__cxa_atexit --enable-clocale=gnu
--disable-libunwind-exceptions --enable-java-awt=gtk
--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --enable-gtk-cairo
--enable-ssp --disable-libssp
Thread model: posix
gcc version 4.1.1 20060724 (prerelease) (4.1.1-3mdk)
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.1/cc1plus -E -quiet -v -D_GNU_SOURCE
./source.C -mtune=generic -O0 -fpch-preprocess -o source.ii
ignoring nonexistent directory "/bmm/home/vil/build/qt/include"
ignoring nonexistent directory
"/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.1/../../../../i586-mandriva-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/bmm/home/vil/include
/bmm/soft/Linux_2.4/include/
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.1/../../../../include/c++/4.1.1
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.1/../../../../include/c++/4.1.1/i586-mandriva-linux-gnu
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.1/../../../../include/c++/4.1.1/backward
/usr/local/include
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.1/include
/usr/include
End of search list.
/usr/lib/gcc/i586-mandriva-linux-gnu/4.1.1/cc1plus -fpreprocessed source.ii
-quiet -dumpbase source.C -mtune=generic -auxbase source -O0 -version -o
source.s
GNU C++ version 4.1.1 20060724 (prerelease) (4.1.1-3mdk)
(i586-mandriva-linux-gnu)
compiled by GNU C version 4.1.1 20060724 (prerelease) (4.1.1-3mdk).
GGC heuristics: --param ggc-min-expand=96 --param ggc-min-heapsize=125369
Compiler executable checksum: 60e98b6becb426227e419ae6a431d9b1
./source.C: In constructor C<T>::C(const C<T_OTHER>&) [with T_OTHER = int, T =
long int]:
./source.C:70: instantiated from here
./source.C:33: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:https://qa.mandriva.com/> for instructions.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
2007-03-02 17:02 ` [Bug c++/31027] " v dot lesk at ic dot ac dot uk
2007-03-02 17:03 ` v dot lesk at ic dot ac dot uk
@ 2007-03-02 17:45 ` pinskia at gcc dot gnu dot org
2007-03-07 21:44 ` v dot lesk at ic dot ac dot uk
` (9 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-03-02 17:45 UTC (permalink / raw)
To: gcc-bugs
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|blocker |normal
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (2 preceding siblings ...)
2007-03-02 17:45 ` pinskia at gcc dot gnu dot org
@ 2007-03-07 21:44 ` v dot lesk at ic dot ac dot uk
2007-03-09 4:54 ` [Bug c++/31027] [4.1/4.2/4.3 regression] " bangerth at dealii dot org
` (8 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: v dot lesk at ic dot ac dot uk @ 2007-03-07 21:44 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from v dot lesk at ic dot ac dot uk 2007-03-07 21:44 -------
Created an attachment (id=13166)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13166&action=view)
Code which triggers bug
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (3 preceding siblings ...)
2007-03-07 21:44 ` v dot lesk at ic dot ac dot uk
@ 2007-03-09 4:54 ` bangerth at dealii dot org
2007-03-09 11:28 ` v dot lesk at ic dot ac dot uk
` (7 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: bangerth at dealii dot org @ 2007-03-09 4:54 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from bangerth at dealii dot org 2007-03-09 04:54 -------
Confirmed. This is a regression introduced in 4.0.x.
Somewhat shorter:
----------------
struct A {};
template<typename T>
struct C: virtual A {
C() {};
template<typename T_OTHER> C(const C<T_OTHER>&) {};
C func(const class C<long>&) const;
operator bool()const;
};
template<typename T>
struct D: C<T> {
void func2() {
C<int>a;
a.func(a);
}
};
void func3() {
C<int>a;
a.func(a);
}
--------------------
g/x> c++ -c x.cc
x.cc: In constructor 'C<T>::C(const C<T_OTHER>&) [with T_OTHER = int, T = long
int]':
x.cc:21: instantiated from here
x.cc:6: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.suse.de/feedback> for instructions.
The funny thing is that we need to keep the class template D around, even
though it is completely unused...
W.
--
bangerth at dealii dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |bangerth at dealii dot org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Keywords|rejects-valid |ice-on-valid-code
Last reconfirmed|0000-00-00 00:00:00 |2007-03-09 04:54:24
date| |
Summary|Compiler segfaults in simple|[4.1/4.2/4.3 regression]
|virtual inheritance |Compiler segfaults in simple
|situation |virtual inheritance
| |situation
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (4 preceding siblings ...)
2007-03-09 4:54 ` [Bug c++/31027] [4.1/4.2/4.3 regression] " bangerth at dealii dot org
@ 2007-03-09 11:28 ` v dot lesk at ic dot ac dot uk
2007-04-13 15:51 ` v dot lesk at ic dot ac dot uk
` (6 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: v dot lesk at ic dot ac dot uk @ 2007-03-09 11:28 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from v dot lesk at ic dot ac dot uk 2007-03-09 11:28 -------
Can anyone suggest a workaround?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (5 preceding siblings ...)
2007-03-09 11:28 ` v dot lesk at ic dot ac dot uk
@ 2007-04-13 15:51 ` v dot lesk at ic dot ac dot uk
2007-06-30 9:08 ` pinskia at gcc dot gnu dot org
` (5 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: v dot lesk at ic dot ac dot uk @ 2007-04-13 15:51 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from v dot lesk at ic dot ac dot uk 2007-04-13 16:51 -------
I have verified that this bug also occurs on g++ 4.0.3.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (6 preceding siblings ...)
2007-04-13 15:51 ` v dot lesk at ic dot ac dot uk
@ 2007-06-30 9:08 ` pinskia at gcc dot gnu dot org
2007-07-04 3:05 ` mmitchel at gcc dot gnu dot org
` (4 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-06-30 9:08 UTC (permalink / raw)
To: gcc-bugs
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.1.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (7 preceding siblings ...)
2007-06-30 9:08 ` pinskia at gcc dot gnu dot org
@ 2007-07-04 3:05 ` mmitchel at gcc dot gnu dot org
2007-07-11 21:52 ` paolo at gcc dot gnu dot org
` (3 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2007-07-04 3:05 UTC (permalink / raw)
To: gcc-bugs
--
mmitchel at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (8 preceding siblings ...)
2007-07-04 3:05 ` mmitchel at gcc dot gnu dot org
@ 2007-07-11 21:52 ` paolo at gcc dot gnu dot org
2007-07-11 21:54 ` paolo at gcc dot gnu dot org
` (2 subsequent siblings)
12 siblings, 0 replies; 14+ messages in thread
From: paolo at gcc dot gnu dot org @ 2007-07-11 21:52 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from paolo at gcc dot gnu dot org 2007-07-11 21:52 -------
Subject: Bug 31027
Author: paolo
Date: Wed Jul 11 21:52:04 2007
New Revision: 126558
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126558
Log:
2007-07-11 Paolo Carlini <pcarlini@suse.de>
PR c++/31027
* g++.dg/inherit/virtual4.C: New.
Added:
trunk/gcc/testsuite/g++.dg/inherit/virtual4.C
Modified:
trunk/gcc/testsuite/ChangeLog
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1/4.2/4.3 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (9 preceding siblings ...)
2007-07-11 21:52 ` paolo at gcc dot gnu dot org
@ 2007-07-11 21:54 ` paolo at gcc dot gnu dot org
2007-07-11 21:56 ` [Bug c++/31027] [4.1 " pcarlini at suse dot de
2008-07-04 16:03 ` jsm28 at gcc dot gnu dot org
12 siblings, 0 replies; 14+ messages in thread
From: paolo at gcc dot gnu dot org @ 2007-07-11 21:54 UTC (permalink / raw)
To: gcc-bugs
------- Comment #8 from paolo at gcc dot gnu dot org 2007-07-11 21:54 -------
Subject: Bug 31027
Author: paolo
Date: Wed Jul 11 21:54:36 2007
New Revision: 126559
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126559
Log:
2007-07-11 Paolo Carlini <pcarlini@suse.de>
PR c++/31027
* g++.dg/inherit/virtual4.C: New.
Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/inherit/virtual4.C
Modified:
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (10 preceding siblings ...)
2007-07-11 21:54 ` paolo at gcc dot gnu dot org
@ 2007-07-11 21:56 ` pcarlini at suse dot de
2008-07-04 16:03 ` jsm28 at gcc dot gnu dot org
12 siblings, 0 replies; 14+ messages in thread
From: pcarlini at suse dot de @ 2007-07-11 21:56 UTC (permalink / raw)
To: gcc-bugs
------- Comment #9 from pcarlini at suse dot de 2007-07-11 21:56 -------
Doesn't fail anymore in mainline and 4_2-branch.
--
pcarlini at suse dot de changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[4.1/4.2/4.3 regression] |[4.1 regression] Compiler
|Compiler segfaults in simple|segfaults in simple virtual
|virtual inheritance |inheritance situation
|situation |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug c++/31027] [4.1 regression] Compiler segfaults in simple virtual inheritance situation
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
` (11 preceding siblings ...)
2007-07-11 21:56 ` [Bug c++/31027] [4.1 " pcarlini at suse dot de
@ 2008-07-04 16:03 ` jsm28 at gcc dot gnu dot org
12 siblings, 0 replies; 14+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2008-07-04 16:03 UTC (permalink / raw)
To: gcc-bugs
------- Comment #10 from jsm28 at gcc dot gnu dot org 2008-07-04 16:02 -------
Closing 4.1 branch.
--
jsm28 at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Known to fail| |4.1.3
Resolution| |FIXED
Target Milestone|4.1.3 |4.2.1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31027
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2008-07-04 16:03 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-03-02 16:46 [Bug c++/31027] New: Compiler segfaults in simple virtual inheritance situation v dot lesk at ic dot ac dot uk
2007-03-02 17:02 ` [Bug c++/31027] " v dot lesk at ic dot ac dot uk
2007-03-02 17:03 ` v dot lesk at ic dot ac dot uk
2007-03-02 17:45 ` pinskia at gcc dot gnu dot org
2007-03-07 21:44 ` v dot lesk at ic dot ac dot uk
2007-03-09 4:54 ` [Bug c++/31027] [4.1/4.2/4.3 regression] " bangerth at dealii dot org
2007-03-09 11:28 ` v dot lesk at ic dot ac dot uk
2007-04-13 15:51 ` v dot lesk at ic dot ac dot uk
2007-06-30 9:08 ` pinskia at gcc dot gnu dot org
2007-07-04 3:05 ` mmitchel at gcc dot gnu dot org
2007-07-11 21:52 ` paolo at gcc dot gnu dot org
2007-07-11 21:54 ` paolo at gcc dot gnu dot org
2007-07-11 21:56 ` [Bug c++/31027] [4.1 " pcarlini at suse dot de
2008-07-04 16:03 ` jsm28 at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).