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++/14083] [3.3/3.4/3.5 regression] ICE in conditional expression operator with throw


------- 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


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