bloomberg/clang-p2996

Use of type splice in an unqualified using-enum-declarator

Closed this issue · 1 comments

Given a scoped enum

enum class EnumCls { A, B, C };

the using-enum-declatation

using enum [:^EnumCls:];

fails to compile. Note that if the scoped enum is specified using a qualified-id whose leading nested-name-specifier contains a splice, everything works okay.

struct S { enum class EnumCls { A, B, C }; };
using enum [:^S:]::EnumCls;

This suggests a special case is probably needed for the l_splice token (possibly also annot_splice? TBD) while parsing a using-enum-declarator.

Closed by 704c44e.