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

--- Comment #1 from Mikael Pettersson <mikpe at it dot uu.se> 2012-03-21 
11:29:40 UTC ---
(In reply to comment #0)
> The following code compiles with error: label at end of compound statement 
> with
> the gcc 4.6.1 compiler.
> 
> Content of t.c:
> ----8<----
> void
> foo (int op)
> {
>   int x = 100000 >> 3;  /* OK */
> 
>   switch (op)
>     {
>     case 0:
>       x = 100000 >> 3;       /* t.c:12:5: error: label at end of compound
> statement */
>       break;
> 
>     default:

The "default:" acts as a label, and it needs a statement after it.  Just add
";" after it, or delete it.  The shift has nothing to do with this issue.

Reply via email to