From: Jacek Caban Subject: [PATCH 1/2] widl: Added widl-specific winrt pragma. Message-Id: <55BF60C3.8080402@codeweavers.com> Date: Mon, 03 Aug 2015 14:38:27 +0200 --- tools/widl/parser.l | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tools/widl/parser.l b/tools/widl/parser.l index b4f2af5..c95277c 100644 --- a/tools/widl/parser.l +++ b/tools/widl/parser.l @@ -147,6 +147,15 @@ UUID *parse_uuid(const char *u) input_name = xstrdup(fname); } midl_echo[^\n]* yyless(9); yy_pop_state(); return tCPPQUOTE; +winrt[^\n]* { + if(import_stack_ptr) { + if(!winrt_mode) + error_loc("winrt IDL file imported in non-winrt mode\n"); + }else { + winrt_mode = TRUE; + } + yy_pop_state(); + } [^\n]* parser_lval.str = xstrdup(yytext); yy_pop_state(); return aPRAGMA; \" yy_push_state(QUOTE); cbufidx = 0; \" {