[Mono-bugs] [Bug 624870] gmcs looks at private members instead of public propertes in annotation attribute matching
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Tue Jul 27 10:12:41 EDT 2010
http://bugzilla.novell.com/show_bug.cgi?id=624870
http://bugzilla.novell.com/show_bug.cgi?id=624870#c3
Dawid Weiss <dawid.weiss at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEEDINFO |NEW
InfoProvider|dawid.weiss at gmail.com |
--- Comment #3 from Dawid Weiss <dawid.weiss at gmail.com> 2010-07-27 14:12:40 UTC ---
I admit I am a bit confused, but it still looks like gmcs bug to me... anyway,
here is the minimal example I could produce, along with IKVM and another
required assembly:
http://ophelia.cs.put.poznan.pl/~dweiss/download/mono-624870.zip
The content of this ZIP file is:
Bindable.java - Java annotation class
Bindable.class - the above, compiled
Bindable.dll - the above, IKVM-compiled to .NET
Org.Carrot2.Core.dll - an larger assembly containing Bindable annotation
(exactly the same code as above),
IKVM.OpenJDK.Core.dll - IKVM core, for reference
IKVM.Runtime.dll - IKVM runtime, for reference
TypeAdaptersTest.cs - Minimal non-compiling example of using Bindable.
Now, TypeAdaptersTest.cs compiles fine with csc, both when referencing
Org.Carrot2.Core.dll and when referencing Bindable.dll, log:
c:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /target:library
/reference:Org.Carrot2.Core.dll /reference:IKVM.OpenJDK.Core.dll
TypeAdaptersTest.cs
Microsoft (R) Visual C# 2010 Compiler version 4.0.30319.1
Copyright (C) Microsoft Corporation. All rights reserved.
c:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe /target:library
/reference:Bindable.dll /reference:IKVM.OpenJDK.Core.dll TypeAdaptersTest.cs
Microsoft (R) Visual C# 2010 Compiler version 4.0.30319.1
Copyright (C) Microsoft Corporation. All rights reserved.
The same command using gmcs compiles fine when referencing Bindable:
"c:\Program Files (x86)\Mono-2.6.7\bin\gmcs" /target:library
/reference:Bindable.dll /reference:IKVM.OpenJDK.Core.dll TypeAdaptersTest.cs
but fails (!) when referencing Org.Carrot2.Core.dll:
"c:\Program Files (x86)\Mono-2.6.7\bin\gmcs" /target:library
/reference:Org.Carrot2.Core.dll /reference:IKVM.OpenJDK.Core.dll
TypeAdaptersTest.cs
TypeAdaptersTest.cs(6,33): error CS0122:
`org.carrot2.util.attribute.BindableAttribute.prefix()' is inaccessible due to
its protection level
C:\PROGRA~2\MONO-2~1.7\lib\mono\2.0\gmcs.exe (Location of the symbol related to
previous error)
Compilation failed: 1 error(s), 0 warnings
Decompiling the above assemblies using reflector shows Bindable and
BindableAttribute are identical (the only difference is the order of declared
attributes). I admit I have no clue, but it looks like something with gmcs.
Hope this helps.
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list