Jason Merrill | 2 Jun 2012 05:59
Picon
Favicon

C++ PATCH for c++/52973 (wrong visibility with template base)

The change in 4.7 to properly restrict visibility of a class based on 
its template arguments exposed this bug: we were waiting until after the 
base list is parsed to apply attributes, so if a class is used as a 
template argument in its own base list, it has the wrong visibility in 
that context.  Fixed by applying infix attributes before parsing the 
base list.  Happily, this also allows us to stop passing attributes 
around so much.

Tested x86_64-pc-linux-gnu, applying to trunk and 4.7.
Attachment (52973.patch): text/x-patch, 5740 bytes

Gmane