dotgnu-pnet-commits
[Top][All Lists]
Advanced

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

[Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_oper.tc,1.43,1.44


From: Gopal.V <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_oper.tc,1.43,1.44
Date: Sun, 20 Jul 2003 11:33:07 -0400

Update of /cvsroot/dotgnu-pnet/pnet/cscc/csharp
In directory subversions:/tmp/cvs-serv14201/cscc/csharp

Modified Files:
        cs_oper.tc 
Log Message:
Fix minor typo + check for op_Equality after coercion


Index: cs_oper.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/cscc/csharp/cs_oper.tc,v
retrieving revision 1.43
retrieving revision 1.44
diff -C2 -r1.43 -r1.44
*** cs_oper.tc  5 Jul 2003 05:03:58 -0000       1.43
--- cs_oper.tc  20 Jul 2003 15:33:05 -0000      1.44
***************
*** 1872,1876 ****
                ILCoerce(info, node->expr1, &(node->expr1), 
CSSemGetType(value1),
                                 CSSemGetType(value2),1);
!               CSSemSetRValue(value1, ILType_Boolean);
        }
        else if(ILCanCoerceNode(info, node->expr2, CSSemGetType(value2),
--- 1872,1876 ----
                ILCoerce(info, node->expr1, &(node->expr1), 
CSSemGetType(value1),
                                 CSSemGetType(value2),1);
!               CSSemSetRValue(value1, CSSemGetType(value2));
        }
        else if(ILCanCoerceNode(info, node->expr2, CSSemGetType(value2),
***************
*** 1879,1884 ****
                ILCoerce(info, node->expr2, &(node->expr2), 
CSSemGetType(value2),
                                 CSSemGetType(value1),1);
!               CSSemSetRValue(value1, ILType_Boolean);
        }
        /* Look for a builtin operator */
        oper = ILFindBinaryOperator(table, CSSemGetType(value1),
--- 1879,1885 ----
                ILCoerce(info, node->expr2, &(node->expr2), 
CSSemGetType(value2),
                                 CSSemGetType(value1),1);
!               CSSemSetRValue(value2, CSSemGetType(value1) );
        }
+ 
        /* Look for a builtin operator */
        oper = ILFindBinaryOperator(table, CSSemGetType(value1),
***************
*** 1890,1893 ****
--- 1891,1906 ----
                CSSemSetRValue(value1, ILType_Boolean);
                EvalOperator(info, *parent, parent, &value1);
+               return value1;
+       }
+       
+       /* Look for a user-specified operator */
+       method = FindUserBinaryOperator(info, name, &(value1), node->expr1,
+                                                                       
&(value2), node->expr2);
+       if(method)
+       {
+               
ApplyUserBinaryOperator(info,method,(ILNode_BinaryExpression*)node,
+                                                               
parent,&(value1),&(value2));
+               yysetfilename(*parent, yygetfilename(node));
+               yysetlinenum(*parent, yygetlinenum(node));
                return value1;
        }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]