dotgnu-pnet
[Top][All Lists]
Advanced

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

[Pnet-developers] [bug #17177] Can't run the Chrome compiler during weir


From: Gopal.V
Subject: [Pnet-developers] [bug #17177] Can't run the Chrome compiler during weird error with virtual method call
Date: Tue, 25 Jul 2006 20:37:51 +0530
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.13) Gecko/20060414 CentOS/1.0.8-1.4.1.centos4 Firefox/1.0.8

Follow-up Comment #7, bug #17177 (project dotgnu-pnet):

The code seems to have two classes which have no common parent, but share an
interface - 

load this (type x)
br label

load default(type y)
label: 
callvirt(interface z)


where x and y implement z. But the stack merge according to ECMA-335 
(1.8.1.3) states that:- 

   The merged type, U, shall be computed as follows 

   1.             if S := T then U=S

   2.             Otherwise if T := S then U=T

   3.             Otherwise, if S and T are both object types, 
                  then let V be the closest common supertype of
                  S and T then U=V.

   4.             Otherwise, the merge shall fail.

And our merge takes common_supertype(x,y) == System.Object which
does not implement z eventhough x & y do.

Now this code compiled by MS CSC seems to be in violation of
the basic verifiability criterion as specified by ECMA. 

*shrug*

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?func=detailitem&item_id=17177>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/



reply via email to

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