From: Olly B. <ol...@us...> - 2006-09-26 07:53:14
|
Update of /cvsroot/swig/SWIG/Source/CParse In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv1620/Source/CParse Modified Files: parser.y Log Message: Use SWIG_GE, SWIG_LE, etc instead of >=, <= since the latter cause problems when used as template parameters. Index: parser.y =================================================================== RCS file: /cvsroot/swig/SWIG/Source/CParse/parser.y,v retrieving revision 1.202 retrieving revision 1.203 diff -C2 -d -r1.202 -r1.203 *** parser.y 25 Sep 2006 20:18:30 -0000 1.202 --- parser.y 26 Sep 2006 07:52:24 -0000 1.203 *************** *** 5470,5487 **** /* Sadly this causes 2 reduce-reduce conflicts with templates. FIXME resolve these. | expr GREATERTHAN expr { ! $$.val = NewStringf("%s>%s",$1.val,$3.val); $$.type = T_INT; } | expr LESSTHAN expr { ! $$.val = NewStringf("%s<%s",$1.val,$3.val); $$.type = T_INT; } */ | expr GREATERTHANOREQUALTO expr { ! $$.val = NewStringf("%s>=%s",$1.val,$3.val); $$.type = T_INT; } | expr LESSTHANOREQUALTO expr { ! $$.val = NewStringf("%s<=%s",$1.val,$3.val); $$.type = T_INT; } --- 5470,5490 ---- /* Sadly this causes 2 reduce-reduce conflicts with templates. FIXME resolve these. | expr GREATERTHAN expr { ! $$.val = NewStringf("%s SWIG_LT %s", $1.val, $3.val); $$.type = T_INT; } | expr LESSTHAN expr { ! $$.val = NewStringf("%s SWIG_GT %s", $1.val, $3.val); $$.type = T_INT; } */ | expr GREATERTHANOREQUALTO expr { ! /* Putting >= in the expression literally causes an infinite ! * loop somewhere in the type system. Just workaround for now ! * - SWIG_GE is defined in swiglabels.swg. */ ! $$.val = NewStringf("%s SWIG_GE %s", $1.val, $3.val); $$.type = T_INT; } | expr LESSTHANOREQUALTO expr { ! $$.val = NewStringf("%s SWIG_LE %s", $1.val, $3.val); $$.type = T_INT; } |