On Mon, Jan 29, 2018 at 10:45 AM, Paolo Carlini
<paolo.carl...@oracle.com> wrote:
> the fix for c++/81236 removed some special code for dependent_p from
> finish_id_expression, and now finish_qualified_id_expr is used for this
> snippet too. Then special code at the beginning of the latter takes care of
> calling build_qualified_name to create the relevant SCOPE_REF. Therefore it
> seems to me that - unless we really want to return an OFFSET_REF - at that
> point we are done, we don't want to get to the end of the following long
> conditional and call again build_qualified_name on the SCOPE_REF and ICE. We
> don't need convert_from_reference either because build_qualified_name is
> passed a null type. Finishing testing (in the library) on x86_64-linux.

Hmm, it seems to me that the later code would handle this case fine
if, instead of calling build_qualified_name here, we do

qualifying_class = TYPE_CONTEXT (expr);
expr = TYPE_IDENTIFIER (expr);

Does that work?

Jason

Reply via email to