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

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

[Dotgnu-pnet-commits] CVS: pnet/engine verify_call.c,1.39,1.40


From: Rhys Weatherley <address@hidden>
Subject: [Dotgnu-pnet-commits] CVS: pnet/engine verify_call.c,1.39,1.40
Date: Sat, 14 Jun 2003 07:41:15 -0400

Update of /cvsroot/dotgnu-pnet/pnet/engine
In directory subversions:/tmp/cvs-serv12431/engine

Modified Files:
        verify_call.c 
Log Message:


Verifier bug with rectangular arrays and the "Address" method (Bug #3845).


Index: verify_call.c
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/engine/verify_call.c,v
retrieving revision 1.39
retrieving revision 1.40
diff -C2 -r1.39 -r1.40
*** verify_call.c       4 Jun 2003 01:10:40 -0000       1.39
--- verify_call.c       14 Jun 2003 11:41:13 -0000      1.40
***************
*** 967,970 ****
--- 967,986 ----
  }
  
+ /*
+  * Set return type information within a stack item.
+  */
+ static void SetReturnType(ILEngineStackItem *item, ILType *returnType)
+ {
+       item->engineType = TypeToEngineType(returnType);
+       if(item->engineType != ILEngineType_M)
+       {
+               item->typeInfo = returnType;
+       }
+       else
+       {
+               item->typeInfo = ILType_Ref(ILTypeStripPrefixes(returnType));
+       }
+ }
+ 
  #elif defined(IL_VERIFY_LOCALS)
  
***************
*** 1032,1037 ****
                                if(returnType != ILType_Void)
                                {
!                                       stack[stackSize].engineType = 
TypeToEngineType(returnType);
!                                       stack[stackSize].typeInfo = returnType;
                                }
                                else
--- 1048,1052 ----
                                if(returnType != ILType_Void)
                                {
!                                       SetReturnType(&(stack[stackSize]), 
returnType);
                                }
                                else
***************
*** 1127,1132 ****
                        if(returnType != ILType_Void)
                        {
!                               stack[stackSize].engineType = 
TypeToEngineType(returnType);
!                               stack[stackSize].typeInfo = returnType;
                        }
                        else
--- 1142,1146 ----
                        if(returnType != ILType_Void)
                        {
!                               SetReturnType(&(stack[stackSize]), returnType);
                        }
                        else
***************
*** 1210,1215 ****
                                if(returnType != ILType_Void)
                                {
!                                       stack[stackSize].engineType = 
TypeToEngineType(returnType);
!                                       stack[stackSize].typeInfo = returnType;
                                }
                                else
--- 1224,1228 ----
                                if(returnType != ILType_Void)
                                {
!                                       SetReturnType(&(stack[stackSize]), 
returnType);
                                }
                                else





reply via email to

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