This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/12573] [3.4 Regression ] ICE (segfault) with Boost.Python
- From: "bangerth at dealii dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 16 Oct 2003 19:19:48 -0000
- Subject: [Bug c++/12573] [3.4 Regression ] ICE (segfault) with Boost.Python
- References: <20031011014942.12573.jbrandmeyer@users.sourceforge.net>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12573
bangerth at dealii dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |3.4
------- Additional Comments From bangerth at dealii dot org 2003-10-16 19:19 -------
This is somewhat cleaner:
---------------------------
template <bool> struct S;
template <typename> struct Y {
int x;
};
template <class T> struct Z {
S< (bool)(&static_cast<Y<T> *>(0)->x == 0) >
s;
};
-------------------------------
g/x> /home/bangerth/bin/gcc-3.4-pre/bin/c++ -c x.cc
x.cc:8: internal compiler error: Segmentation fault
Please submit a full bug report,
This is a regression. As to what goes wrong: if one replaces Y<T> in
the cast by Y<int>, one gets:
g/x> /home/bangerth/bin/gcc-3.4-pre/bin/c++ -c x.cc
x.cc:8: error: a cast to a type other than an integral or enumeration type
cannot appear in a constant-expression
x.cc:9: error: template argument 1 is invalid
Maybe this gives a clue as to what goes wrong...
W.