namespace System
{
[Serializable]
+#if NET_2_0
+ [ComVisible(true)]
+ [ComDefaultInterface (typeof (_Exception))]
+ [ClassInterface (ClassInterfaceType.None)]
+#else
[ClassInterface (ClassInterfaceType.AutoDual)]
+#endif
public class Exception : ISerializable
#if NET_2_0
, _Exception
#endif
{
+ #region Sync with object-internals.h
IntPtr [] trace_ips;
Exception inner_exception;
- string message;
+ internal string message;
string help_link;
string class_name;
string stack_trace;
int remote_stack_index;
internal int hresult = unchecked ((int)0x80004005);
string source;
+ private IDictionary _data;
+ #endregion
public Exception ()
{
}
#if NET_2_0
- private IDictionary _data;
-
public virtual IDictionary Data {
get {
if (_data == null) {
}
#endif
return mi.DeclaringType.ToString () + "." + mi.Name + generic + " (" + parms + ")";
- }
+ }
+
+#if NET_2_0
+ //
+ // The documentation states that this is available in 1.x,
+ // but it was not available (MemberRefing this would fail)
+ // and it states the signature is `override sealed', but the
+ // correct value is `newslot'
+ //
+ public new Type GetType ()
+ {
+ return base.GetType ();
+ }
+#endif
}
}