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.32,1.33


From: Gopal.V <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/cscc/csharp cs_oper.tc,1.32,1.33
Date: Tue, 10 Dec 2002 16:40:28 -0500

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

Modified Files:
        cs_oper.tc 
Log Message:
unsafe AddressOf operator for C#


Index: cs_oper.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/cscc/csharp/cs_oper.tc,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -r1.32 -r1.33
*** cs_oper.tc  21 Nov 2002 09:52:26 -0000      1.32
--- cs_oper.tc  10 Dec 2002 21:40:26 -0000      1.33
***************
*** 1852,1859 ****
  ILNode_SemAnalysis(ILNode_AddressOf)
  {
-       /* TODO */
        CSSemValue value;
        CCUnsafeMessage(info, (ILNode *)node, "unsafe address operator");
!       CSSemSetRValue(value, ILType_Int32);
        return value;
  }
--- 1852,1868 ----
  ILNode_SemAnalysis(ILNode_AddressOf)
  {
        CSSemValue value;
        CCUnsafeMessage(info, (ILNode *)node, "unsafe address operator");
!       value=ILNode_SemAnalysis(node->expr,info,&(node->expr));
!       if(!CSSemIsValue(value))
!       {
!               
CCErrorOnLine(yygetfilename(node->expr),yygetlinenum(node->expr),
!                               "invalid argument for address operator");
!               CSSemSetRValue(value,ILType_Int32);
!               return value;
!       }
!       CSSemSetRValue(value,ILTypeCreateRef(info->context,
!                                                       IL_TYPE_COMPLEX_PTR,
!                                                       CSSemGetType(value)));
        return value;
  }




reply via email to

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