Still me...
In a close topic, I just found how to fix the suffix of anonymous strucs/enums symbols in C-style languages, patch attached.
However, I wonder why it was like it was before, was there a reason? I mean, the variable (contextual_fake_count) pas properly initialized, but in initialize*Parser() (which is called only once per language). I feel weird about this being an accident... I see 3 possibilities: 1) it was actually an accident, fixing it is good; 2) the behavior of the tagmanager changed and initialise*Parser() was used to be called before each parse, so fixing it is good; 3) it was intentional for some reasons, so "fixing" it is probably wrong.
As a possible reason for 3, I'd think that it was perhaps to avoid having two anonymous symbols with the same name in a workspace. But I don't see why it'd be a problem to have those "conflicts", since name clash is not an issue with the TM workspace...
What do you know/think?
Regards, Colomban