This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/12573] [3.4 Regression ] ICE (segfault) with Boost.Python


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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]