[Bug c++/58022] [4.8 Regression] Compiler rejects abstract class in template class with friend operator

2013-07-30 Thread jason at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58022

Jason Merrill jason at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||jason at gcc dot gnu.org
 Resolution|--- |FIXED
   Assignee|unassigned at gcc dot gnu.org  |jason at gcc dot gnu.org

--- Comment #5 from Jason Merrill jason at gcc dot gnu.org ---
Fixed for 4.8.2


[Bug c++/58022] [4.8 Regression] Compiler rejects abstract class in template class with friend operator

2013-07-29 Thread scovich at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58022

--- Comment #3 from Ryan Johnson scovich at gmail dot com ---
(In reply to Paolo Carlini from comment #1)
 Please try to reduce the testcase further, no includes. You have a number of
 options here: http://gcc.gnu.org/wiki/A_guide_to_testcase_reduction

Sorry, I thought ostream was an important part of the bug and did some work
to put it back in... Here's the fully reduced case:

// --- begin bug.cpp ---
templatetypename _CharT
class basic_ostream;

typedef basic_ostreamchar ostream;

templatetypename T
basic_ostreamT operator(basic_ostreamT, T);

template class T class foo;

template class T ostream  operator(ostream, const fooT);

template class T class foo  {
friend ostream operator T (ostream, const fooT);
};

class bar;

foobar fb;

class bar { virtual void baz()=0; };
// --- end bug.cpp ---


[Bug c++/58022] [4.8 Regression] Compiler rejects abstract class in template class with friend operator

2013-07-29 Thread paolo.carlini at oracle dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58022

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-07-29
   Target Milestone|--- |4.8.2
 Ever confirmed|0   |1

--- Comment #4 from Paolo Carlini paolo.carlini at oracle dot com ---
Thanks. Confirmed as a regression present only in 4_8-branch.