[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_oper.tc,1.40,1.41 cs_gra
From: |
Gopal.V <address@hidden> |
Subject: |
[Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_oper.tc,1.40,1.41 cs_grammar.y,1.56,1.57 |
Date: |
Thu, 08 May 2003 15:05:10 -0400 |
Update of /cvsroot/dotgnu-pnet/pnet/cscc/csharp
In directory subversions:/tmp/cvs-serv13153/cscc/csharp
Modified Files:
cs_oper.tc cs_grammar.y
Log Message:
Fix boolean conversion problems for user defined conversions
Index: cs_oper.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/cscc/csharp/cs_oper.tc,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -r1.40 -r1.41
*** cs_oper.tc 8 May 2003 15:25:56 -0000 1.40
--- cs_oper.tc 8 May 2003 19:05:07 -0000 1.41
***************
*** 1287,1290 ****
--- 1287,1298 ----
}
+ if(ILCanCoerceNode(info,node->expr,CSSemGetType(value),
ILType_Boolean,0))
+ {
+ ILCoerce(info,node->expr,&(node->expr),CSSemGetType(value),
+ ILType_Boolean,0);
+ CSSemSetRValue(value,ILType_Boolean);
+ return value;
+ }
+
/* We need a class or a value type if not boolean */
if(!ILType_IsValueType(CSSemGetType(value)) &&
Index: cs_grammar.y
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/cscc/csharp/cs_grammar.y,v
retrieving revision 1.56
retrieving revision 1.57
diff -C2 -r1.56 -r1.57
*** cs_grammar.y 21 Apr 2003 21:20:17 -0000 1.56
--- cs_grammar.y 8 May 2003 19:05:07 -0000 1.57
***************
*** 1558,1562 ****
UnaryExpression
: PrimaryExpression { $$ = $1; }
! | '!' PrefixedUnaryExpression { MakeUnary(LogicalNot, $2); }
| '~' PrefixedUnaryExpression { MakeUnary(Not, $2); }
| '(' Expression ')' UnaryExpression {
--- 1558,1564 ----
UnaryExpression
: PrimaryExpression { $$ = $1; }
! | '!' PrefixedUnaryExpression {
! MakeUnary(LogicalNot,ILNode_ToBool_create($2));
! }
| '~' PrefixedUnaryExpression { MakeUnary(Not, $2); }
| '(' Expression ')' UnaryExpression {
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_oper.tc,1.40,1.41 cs_grammar.y,1.56,1.57,
Gopal.V <address@hidden> <=