https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61162
--- Comment #2 from Tom Tromey <tromey at gcc dot gnu.org> --- Note that it is also wrong for a conversion diagnosed in a "return": enum e { ZERO = 0, ONE }; enum e f(void) { return 0; } barimba. gcc --syntax-only -Wc++-compat r.c r.c: In function âfâ: r.c:5:3: warning: enum conversion in return is invalid in C++ [-Wc++-compat] return 0; ^ I think it should point to the expression.