Bison currently reports 37+4 shift/reduce and reduce/reduce conflicts, this patch gets the number down to 7+0.
I have fixed the reduce/reduce conflicts, then noticed that two of the fixes were already made in KDE tree (the other two are different because declaration blocks are described in quite different ways). Shift/reduce fixes are just merged from KDE, r332845 by Michael Matz.
Created attachment 7373 [details]
Comment on attachment 7373 [details]
It's a little strange to give a space and a selector the same precedence as the "unimportant" token. I see that it might work, but it seems a bit obscure or subtle.
But that's a nitpick. This change looks great! r=me
(In reply to comment #2)
The precedence changes are only needed for shift/reduce fixes, taken from KDE. I cannot say that I understood them particularly well.