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

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

[dotgnu-pnet-commits] pnet ChangeLog cscc/csharp/cs_stmt.tc


From: Klaus Treichel
Subject: [dotgnu-pnet-commits] pnet ChangeLog cscc/csharp/cs_stmt.tc
Date: Sun, 21 Dec 2008 18:50:17 +0000

CVSROOT:        /cvsroot/dotgnu-pnet
Module name:    pnet
Changes by:     Klaus Treichel <ktreichel>      08/12/21 18:50:17

Modified files:
        .              : ChangeLog 
        cscc/csharp    : cs_stmt.tc 

Log message:
        Fix a compiler warning and code generation for casts from array to 
element pointer.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pnet/ChangeLog?cvsroot=dotgnu-pnet&r1=1.3592&r2=1.3593
http://cvs.savannah.gnu.org/viewcvs/pnet/cscc/csharp/cs_stmt.tc?cvsroot=dotgnu-pnet&r1=1.43&r2=1.44

Patches:
Index: ChangeLog
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/ChangeLog,v
retrieving revision 1.3592
retrieving revision 1.3593
diff -u -b -r1.3592 -r1.3593
--- ChangeLog   14 Dec 2008 15:19:59 -0000      1.3592
+++ ChangeLog   21 Dec 2008 18:50:07 -0000      1.3593
@@ -1,3 +1,9 @@
+2008-12-21  Klaus Treichel  <address@hidden>
+
+       * cscc/csharp/cs_stmt.tc (ILNode_SemAnalysis(ILNode_FixExpr)): Remove 
the
+       handling of a simple array because this is done by the cast now.
+       (ILNode_SemAnalysis(ILNode_Fixed)): Fix a compiler warning.
+
 2008-12-14  Klaus Treichel  <address@hidden>
 
        * codegen/cg_coerce.c (GetUnsafeConvertRules): Handle cast from an array

Index: cscc/csharp/cs_stmt.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/cscc/csharp/cs_stmt.tc,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -b -r1.43 -r1.44
--- cscc/csharp/cs_stmt.tc      14 Dec 2008 15:20:00 -0000      1.43
+++ cscc/csharp/cs_stmt.tc      21 Dec 2008 18:50:15 -0000      1.44
@@ -1674,7 +1674,7 @@
 
        if(!ILType_IsPointer(type))
        {
-               CCErrorOnLine(yygetfilename(errorNode), yygetlinenum(errorNode),
+               CCErrorOnLine(yygetfilename(node->type), 
yygetlinenum(node->type),
                                        "only pointer types can be declared in 
fixed statements");
        }
 
@@ -1774,30 +1774,8 @@
  */
 ILNode_SemAnalysis(ILNode_FixExpr)
 {
-       CSSemValue value;
-       ILNode *expr;
-       
-       /* Perform semantic analysis on the expression */
-       value = ILNode_SemAnalysis(node->expr, info, &(node->expr));
-
-       /* Wrap the expression to prevent double evaluation */
-       expr = ILNode_SemGuard_create(node->expr, value);
-       yysetfilename(expr, yygetfilename(node->expr));
-       yysetlinenum(expr, yygetlinenum(node->expr));
-
-       /* If the expression is an array, then turn it into a pointer */
-       if(CSSemIsValue(value) && ILType_IsSimpleArray(CSSemGetType(value)))
-       {
-               expr = ILNode_ArrayAccess_create(expr, ILNode_Int32_create(0, 
0, 1));
-               yysetfilename(expr, yygetfilename(node->expr));
-               yysetlinenum(expr, yygetlinenum(node->expr));
-               expr = ILNode_AddressOf_create(expr);
-               yysetfilename(expr, yygetfilename(node->expr));
-               yysetlinenum(expr, yygetlinenum(node->expr));
-       }
-
        /* Assign the value to the variable */
-       *parent = ILNode_Assign_create(node->name, expr);
+       *parent = ILNode_Assign_create(node->name, node->expr);
        yysetfilename(*parent, yygetfilename(node));
        yysetlinenum(*parent, yygetlinenum(node));
 




reply via email to

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