[svn] r7638: nemerle/trunk/ncc: generation/HierarchyEmitter.n
testsuite/positive/multi-implements.n
nazgul
svnadmin at nemerle.org
Mon Apr 30 17:50:50 CEST 2007
Log:
Emit explicit implementation for all non-public methods
Author: nazgul
Date: Mon Apr 30 17:50:49 2007
New Revision: 7638
Modified:
nemerle/trunk/ncc/generation/HierarchyEmitter.n
nemerle/trunk/ncc/testsuite/positive/multi-implements.n
Modified: nemerle/trunk/ncc/generation/HierarchyEmitter.n
==============================================================================
--- nemerle/trunk/ncc/generation/HierarchyEmitter.n (original)
+++ nemerle/trunk/ncc/generation/HierarchyEmitter.n Mon Apr 30 17:50:49 2007
@@ -720,7 +720,7 @@
foreach (overridden in ImplementedMethods) {
// Message.Debug ("override " + method_info.Name + " " + overridden_info.Name + " in " +
// type_builder.FullName);
- when (mb.IsPrivate || Name != overridden.Name) {
+ when (!mb.IsPublic || Name != overridden.Name) {
def overridden_info =
ILEmitter.GetMethodInfo (declaring_type.GetMemType (), overridden);
type_builder.DefineMethodOverride (mb, overridden_info)
Modified: nemerle/trunk/ncc/testsuite/positive/multi-implements.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/positive/multi-implements.n (original)
+++ nemerle/trunk/ncc/testsuite/positive/multi-implements.n Mon Apr 30 17:50:49 2007
@@ -46,6 +46,15 @@
public event E1 : System.EventHandler;
}
+interface IDo {
+ Do() : void;
+}
+
+class Bug996 : IDo {
+ internal Do() : void implements IDo.Do {
+ }
+}
+
module M {
Main () : void {
More information about the svn
mailing list