[prev in list] [next in list] [prev in thread] [next in thread]
List: mono-bugs
Subject: [Mono-bugs] [Bug 33089][Nor] New - mcs complains when an indexer with different signature is declare
From: bugzilla-daemon () rocky ! ximian ! com
Date: 2002-10-31 6:57:49
[Download RAW message or body]
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by mathpup@mylinuxisp.com.
http://bugzilla.ximian.com/show_bug.cgi?id=33089
--- shadow/33089 Thu Oct 31 01:57:49 2002
+++ shadow/33089.tmp.29869 Thu Oct 31 01:57:49 2002
@@ -0,0 +1,86 @@
+Bug#: 33089
+Product: Mono/MCS
+Version: unspecified
+OS:
+OS Details: SuSE Linux 8.0
+Status: NEW
+Resolution:
+Severity:
+Priority: Normal
+Component: Misc
+AssignedTo: mono-bugs@ximian.com
+ReportedBy: mathpup@mylinuxisp.com
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: mcs complains when an indexer with different signature is declared in a \
derived class without "override" +
+Description of Problem:
+
+If I create a indexer in a base class with one signature and another indexer in a \
derived +class, where the deriver class's indexer has a different \
signature, mcs complains that the +second indexer hides the base indexer \
without using "override" or "new." See program +below:
+
+using System;
+
+public class Base
+{
+ public virtual int this[ int x ]
+ {
+ get { return 5; }
+ set { ; }
+ }
+}
+
+
+public class Derived: Base
+{
+ public virtual int this[ int x, int y ]
+ {
+ get { return 6; }
+ set { ; }
+ }
+}
+
+
+public class Testing
+{
+ public static void Main()
+ {
+ Derived d = new Derived();
+
+ Console.WriteLine(d[4]);
+ }
+}
+
+
+
+Steps to reproduce the problem:
+1. Compile the program above.
+2.
+3.
+
+Actual Results:
+
+mcs shows an error: " this.cs(16) warning CS0114: `Derived.Item' hides inherited
+member `Base.this'. To make the current member override that implementation, add
+the override keyword, otherwise use the new keyword
+this.cs(29) error CS0154: indexer can not be used in this context, because it lacks \
a +`get' accessor"
+
+
+Expected Results:
+
+No errors.
+
+
+How often does this happen?
+
+Always
+
+Additional Information:
+
+Changing "virtual" to "override" in the Derived.this[] indexer results in successful \
+compilation, but I think that that behavior is incorrect and should actually cause \
an error.
_______________________________________________
mono-bugs maillist - mono-bugs@ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic