Bug 5644

Summary: Mono allows to access not accessible method
Product: [Mono] Runtime Reporter: Marek Safar <masafa>
Component: JITAssignee: Rodrigo Kumpera <kumpera>
Status: RESOLVED FIXED    
Severity: normal CC: jeroen, mono-bugs+mono, mono-bugs+runtime
Priority: ---    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Tags: Is this bug a regression?: ---
Last known good build:
Attachments: test-846-lib.dll
test-846.exe

Description Marek Safar 2012-06-14 04:16:54 UTC
When executed

.NET

Unhandled Exception: System.MethodAccessException: Attempt by method 'BBB.Main()
' to access method 'A.Foo()' failed.
   at BBB.Main()

Mono
<nothing>
Comment 1 Marek Safar 2012-06-14 04:18:27 UTC
Created attachment 2056 [details]
test-846-lib.dll
Comment 2 Marek Safar 2012-06-14 04:19:07 UTC
Created attachment 2057 [details]
test-846.exe
Comment 3 Marek Safar 2012-06-14 04:20:19 UTC
I think this is a bug in virtual dispatch where wrong method is called
Comment 4 Marek Safar 2012-06-14 05:44:08 UTC
Actually, verifier catches this but why do we allow to call non-accessible method?
Comment 5 Jeroen Frijters 2012-06-14 09:39:33 UTC
We ran into this because an interaction between mcs and ikvm and the current Mono runtime behavior masked the problem. So I would argue for at least reconsidering the choice of not enabling access check by default.
Comment 6 Rodrigo Kumpera 2016-04-14 00:48:20 UTC
Queued to be merged https://github.com/mono/mono/pull/2880
Comment 7 Rodrigo Kumpera 2016-07-04 19:53:50 UTC
Ok, finally got the time to fix and merge.