This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/14083] [3.3/3.4/3.5 regression] ICE in conditional expression operator with throw
- From: "bangerth at dealii dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Feb 2004 14:03:45 -0000
- Subject: [Bug c++/14083] [3.3/3.4/3.5 regression] ICE in conditional expression operator with throw
- References: <20040209134027.14083.gcc@online.nl>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From bangerth at dealii dot org 2004-02-09 14:03 -------
Confirmed, and this hasn't been fixed as that other bug with
throw-expressions in conditionals. This still fails with
3.3.3, 3.4 and mainline. It works with 3.2.3, though, so this
is a regression.
Here's a legal testcase, though I don't have the time to reduce
it:
---------------------
#include <iostream>
#include <string>
using namespace std;
int main(int argc,char**argv)
{
std::string s("hello world");
try {
cerr << ( s=="hello" ? s : throw exception() ) << endl;
} catch (...) {
cerr << "Exception" << endl;
};
};
-------------------
W.
--
What |Removed |Added
----------------------------------------------------------------------------
Known to fail| |3.3.1 3.3.3 3.4.0 3.5.0
Known to work| |3.2.3
Summary|ICE in conditional |[3.3/3.4/3.5 regression] ICE
|expression operator with |in conditional expression
|throw |operator with throw
Target Milestone|--- |3.3.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14083