2007-10-27 Marek Safar <marek.safar@gmail.com>
[mono.git] / mcs / class / corlib / System / Exception.cs
index 9a5e091617d591ff667476db5d1eac8cc73f1f94..97a6d5bd3fd9d77d644c89aa93a72282ffb289ae 100644 (file)
@@ -40,15 +40,19 @@ using System.Security.Permissions;
 namespace System
 {
        [Serializable]
-       [ClassInterface (ClassInterfaceType.AutoDual)]
 #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;
                internal string message;
@@ -59,6 +63,8 @@ namespace System
                int remote_stack_index;
                internal int hresult = unchecked ((int)0x80004005);
                string source;
+               private IDictionary _data;
+               #endregion
 
                public Exception ()
                {
@@ -212,8 +218,6 @@ namespace System
                }
 
 #if NET_2_0
-               private IDictionary _data;
-
                public virtual IDictionary Data {
                        get {
                                if (_data == null) {