struct foo {
        unsigned int a:4;int b : 4;
};

int bar(int x)
{
        switch (x){ case 1: return 2; case 4: return 4;
                        case
                             6
                                :
                                return
                                        8;
        case 10:
                return 19;
        }return 0;

}


int main(void){bar(10);
foo: bar(-9); bar(9);baz:return 0;}
