Rob Shearman : widl: Allow NULL to be used in expressions.

Alexandre Julliard julliard at winehq.org
Thu Apr 24 15:56:49 CDT 2008


Module: wine
Branch: master
Commit: 58be89230e29689eedb84d5f97710b33f101bd06
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=58be89230e29689eedb84d5f97710b33f101bd06

Author: Rob Shearman <rob at codeweavers.com>
Date:   Thu Apr 24 19:04:14 2008 +0100

widl: Allow NULL to be used in expressions.

---

 tools/widl/parser.l |    1 +
 tools/widl/parser.y |    2 ++
 2 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/tools/widl/parser.l b/tools/widl/parser.l
index 4e2a6f4..4ae37ef 100644
--- a/tools/widl/parser.l
+++ b/tools/widl/parser.l
@@ -191,6 +191,7 @@ struct keyword {
 
 static const struct keyword keywords[] = {
 	{"FALSE",			tFALSE},
+	{"NULL",			tNULL},
 	{"TRUE",			tTRUE},
 	{"__cdecl",			tCDECL},
 	{"__fastcall",			tFASTCALL},
diff --git a/tools/widl/parser.y b/tools/widl/parser.y
index f514701..0514d9c 100644
--- a/tools/widl/parser.y
+++ b/tools/widl/parser.y
@@ -219,6 +219,7 @@ static void add_explicit_handle_if_necessary(func_t *func);
 %token tNONBROWSABLE
 %token tNONCREATABLE
 %token tNONEXTENSIBLE
+%token tNULL
 %token tOBJECT tODL tOLEAUTOMATION
 %token tOPTIONAL
 %token tOUT
@@ -624,6 +625,7 @@ expr:	  aNUM					{ $$ = make_exprl(EXPR_NUM, $1); }
 	| aHEXNUM				{ $$ = make_exprl(EXPR_HEXNUM, $1); }
 	| aDOUBLE				{ $$ = make_exprd(EXPR_DOUBLE, $1); }
 	| tFALSE				{ $$ = make_exprl(EXPR_TRUEFALSE, 0); }
+	| tNULL					{ $$ = make_exprl(EXPR_NUM, 0); }
 	| tTRUE					{ $$ = make_exprl(EXPR_TRUEFALSE, 1); }
 	| aIDENTIFIER				{ $$ = make_exprs(EXPR_IDENTIFIER, $1); }
 	| expr '?' expr ':' expr		{ $$ = make_expr3(EXPR_COND, $1, $3, $5); }




More information about the wine-cvs mailing list