Mohamad Al-Jaf : widl: Add support for inherited runtime classes.
Module: wine Branch: master Commit: 781b8b0e9911bbbde7f895675ae7cd2863d076a1 URL: https://gitlab.winehq.org/wine/wine/-/commit/781b8b0e9911bbbde7f895675ae7cd2... Author: Mohamad Al-Jaf <mohamadaljaf(a)gmail.com> Date: Fri Mar 31 22:15:34 2023 -0400 widl: Add support for inherited runtime classes. Needed to build windows.ui.composition.idl. --- tools/widl/parser.y | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tools/widl/parser.y b/tools/widl/parser.y index 5567d94559e..9c07536eac1 100644 --- a/tools/widl/parser.y +++ b/tools/widl/parser.y @@ -1009,8 +1009,9 @@ coclassdef: attributes coclass '{' class_interfaces '}' semicolon_opt runtimeclass: tRUNTIMECLASS typename { $$ = type_runtimeclass_declare($2, current_namespace); } ; -runtimeclass_def: attributes runtimeclass '{' class_interfaces '}' semicolon_opt - { $$ = type_runtimeclass_define($2, $1, $4); } +runtimeclass_def: attributes runtimeclass inherit '{' class_interfaces '}' semicolon_opt + { if ($3 && type_get_type($3) != TYPE_RUNTIMECLASS) error_loc("%s is not a runtimeclass\n", $3->name); + $$ = type_runtimeclass_define($2, $1, $5); } ; apicontract: tAPICONTRACT typename { $$ = type_apicontract_declare($2, current_namespace); }
participants (1)
-
Alexandre Julliard