Rémi Bernon (@rbernon) commented about tools/widl/parser.y:
imp_decl_statements : %empty { $$ = NULL; } | imp_decl_statements tINTERFACE qualified_type '<' parameterized_type_args '>' ';' - { $$ = append_statement($1, make_statement_reference( @$, type_parameterized_type_specialize_declare($3, $5) )); } + { if (do_proxies) imp_parameterized_type_stmts = append_statement( imp_parameterized_type_stmts, make_statement_parameterized_type(@$, $3, $5) ); + $$ = append_statement($1, make_statement_reference( @$, type_parameterized_type_specialize_declare($3, $5) )); + } This doesn't seem necessary for this MR, do you have a sample use case where it is? It doesn't look great to have the condition check here, might end up with different parsing results depending on whether do_proxies is set or not.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/8910#note_115980