On Tue, Apr 14, 2020 at 01:39:00AM +0200, Luc Van Oostenryck wrote: > > I like the idea. I just gave it a very quick test with sparse's > "make check" (it covers a lot of simple but corner/dirty cases that > the kernel may/should not have). It seemed to pass all the tests but > the ones using __label__. For exemple, things like this complain: > { > __label__ l; > > l: > goto l; > } > > I'll look more at it tommorow as it's a bit late here. I just fear > that __label__ will spoil things here or at least complicate them. The problem is that now normal labels use the new label_scope but the ones declared with __label__ use block_scope and these 2 scopes are kinda in a different namespace of scope. It's easy to make it work here but the problem would remain when extra block levels are present, like in: { __label__ l; { l: goto l; } goto l; } It's surely salvageable in some ways but I'm not sure it's worth the troubles. -- Luc