This is the mail archive of the gcc-patches@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]

Re: C++ Patch for c++/60894


Hi,

On 02/13/2015 04:03 PM, Jason Merrill wrote:
On 02/11/2015 02:10 PM, Paolo Carlini wrote:
Today I was having a look to this pending issue and went astray due to
the broken thread: I wondered if, basing on Fabien' first try and the
comments accompanying tag_scope, it would make sense to use
strip_using_decl only when the scope is ts_global (or maybe !=
ts_current)?!?

Good thought, that makes sense and is a lot simpler. But I think since we have a ts_global block earlier in the function, let's do the stripping there, right after the call to lookup_name_prefer_type. OK with that change.
Thanks. Thus I'm going to resolve the issue at least in mainline and 4_9-branch with the below.

While working on this issue I noticed that we have another regression, which appeared in 4_7, having to do with using declarations but not involving redeclarations or redundant 'struct' in parameters:

struct B
{
  template<typename T>
  struct S {};
};

struct D : B
{
  using B::S;

  template<typename T>
  void doIt(/*struct*/ S<T>&);
};

Anything you would recommend besides filing a new Bug Report (or marking an existing one as regression)?!?

Thanks,
Paolo.

//////////////////////////

Attachment: CL_60894
Description: Text document

Attachment: patch_60894
Description: Text document


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