http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55776

--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Manuel López-Ibáñez from comment #3)
> But the global foo is a type while myenum::foo is not a type. Is there any
> context where they can be used interchangeably?
> 
> enum class myenum
> {
>   bar = int 
> };
> 
> doesn't make sense.

How about this:

typedef int foo;

enum class myenum
{
  foo = 1,
  bar = (foo)+1
};

What is the value of myenum::bar?  Is it clear and unambiguous, or should there
be a warning?

Reply via email to