vala r853 - in trunk: . vala



Author: juergbi
Date: Fri Jan 18 17:42:55 2008
New Revision: 853
URL: http://svn.gnome.org/viewvc/vala?rev=853&view=rev

Log:
2008-01-18  Juerg Billeter  <j bitron ch>

	* vala/scanner.l, vala/parser.y: support pointers as generic type
	  arguments


Modified:
   trunk/ChangeLog
   trunk/vala/parser.y
   trunk/vala/scanner.l

Modified: trunk/vala/parser.y
==============================================================================
--- trunk/vala/parser.y	(original)
+++ trunk/vala/parser.y	Fri Jan 18 17:42:55 2008
@@ -4082,8 +4082,10 @@
 	: type
 	  {
 		$$ = $1;
-		if (!vala_unresolved_type_get_is_weak (VALA_UNRESOLVED_TYPE ($$))) {
-			vala_unresolved_type_set_takes_ownership (VALA_UNRESOLVED_TYPE ($$), TRUE);
+		if (VALA_IS_UNRESOLVED_TYPE ($$)) {
+			if (!vala_unresolved_type_get_is_weak (VALA_UNRESOLVED_TYPE ($$))) {
+				vala_unresolved_type_set_takes_ownership (VALA_UNRESOLVED_TYPE ($$), TRUE);
+			}
 		}
 	  }
 	;

Modified: trunk/vala/scanner.l
==============================================================================
--- trunk/vala/scanner.l	(original)
+++ trunk/vala/scanner.l	Fri Jan 18 17:42:55 2008
@@ -110,7 +110,7 @@
 "<="		{ uploc; return OP_LE; }
 ">="		{ uploc; return OP_GE; }
 "=>"		{ uploc; return LAMBDA; }
-"<"(("ref"|"weak")" "+)?({ident}".")?{ident}"#"?("[]""#"?)?(","" "*({ident}".")?{ident}"#"?("[]""#"?)?)*">"	{ yyless (1); uploc; return GENERIC_LT; }
+"<"{space}("weak"{space})?({ident}".")?{ident}("?"|"*"+)?("[]""?"?)?(","{space}("weak"{space})?({ident}".")?{ident}("?"|"*"+)?("[]""?"?)?)*">"	{ yyless (1); uploc; return GENERIC_LT; }
 "<"		{ uploc; return OP_LT; }
 ">"		{ uploc; return OP_GT; }
 "!"		{ uploc; return OP_NEG; }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]