[PATCH 0/1] MR809: widl: Allow parameterized types in runtimeclass interfaces.
From: R��mi Bernon <rbernon(a)codeweavers.com> --- tools/widl/parser.y | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/widl/parser.y b/tools/widl/parser.y index 4000f37032c..c483eb06ff0 100644 --- a/tools/widl/parser.y +++ b/tools/widl/parser.y @@ -1086,6 +1086,7 @@ interfacedef: attributes interface { if ($2->type_type == TYPE_PARAMETERIZED_TY interfaceref: tINTERFACE typename { $$ = get_type(TYPE_INTERFACE, $2, current_namespace, 0); } | tINTERFACE namespace_pfx typename { $$ = get_type(TYPE_INTERFACE, $3, $2, 0); } + | tINTERFACE parameterized_type { if (type_get_type(($$ = $2)) != TYPE_INTERFACE) error_loc("%s is not an interface\n", $$->name); } ; dispinterfaceref: -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/809
Does type_get_type set the type to $$, or isn't that needed here? -- https://gitlab.winehq.org/wine/wine/-/merge_requests/809#note_8078
On Fri Sep 9 11:44:40 2022 +0000, Bernhard K��lbl wrote:
Does type_get_type set the type to $$, or isn't that needed here? It is assigned when passing type_get_type parameter.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/809#note_8122
This is required for proper runtimeclass declaration in https://gitlab.winehq.org/wine/wine/-/merge_requests/716. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/809#note_8306
This merge request was approved by Jacek Caban. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/809
participants (3)
-
Bernhard Kölbl -
Jacek Caban (@jacek) -
Rémi Bernon