[Mono-bugs] [Bug 398980] Missing System.MissingFieldException exception

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Tue Jun 10 15:49:03 EDT 2008


https://bugzilla.novell.com/show_bug.cgi?id=398980

User rkumpera at novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=398980#c3





--- Comment #3 from Rodrigo Kumpera <rkumpera at novell.com>  2008-06-10 13:49:03 MDT ---
Marek,


On .NET System.MissingFieldException is thrown since
'<>c__CompilerGenerated0`1.u' is not visible from X::Test<T> (!!T t). The
offending opcode is:

IL_000f:  stfld !!0 class X/'<>c__CompilerGenerated0`1'<!!0>::u

I believe this is a bug on MS runtime since if we examine the visibility
requirement all are met by the current code:

class private auto ansi beforefieldinit X
  .method public instance void Test<T> (!!T t)

  .class nested private auto ansi beforefieldinit
'<>c__CompilerGenerated0`1'<T> 
    .field  assembly  !0 u


To access X/'<>c__CompilerGenerated0`1'<!!0>::u, P I 8.5.3 states that 3 rules
must be met:

1)The type is visible and, in case of a nested type, accessible.
Type '<>c__CompilerGenerated0`1' is nested in 'X', which means it's visible.

2)The member is accessible.
Member have assembly visibility. Should work.

3)All relevant security demands have been granted.
CAS is irrelevant here.


-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the mono-bugs mailing list