Skip to content
This repository was archived by the owner on Mar 8, 2021. It is now read-only.

Commit 7fe95c1

Browse files
committed
Update System.dll for mono/mono@240aa5b9 Brekage
Context: https://github.com/dotnet/corefx/issues/35924 Context: dotnet/corefx#37278 Context: dotnet/standard#1171 Context: dotnet/android@ce4eeb4 Context: https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android/561/API_20Compatibility_20Checks/ Commit xamarin/xamarin-android/master@ce4eeb4f introduced API breakage within `System.dll`: the [`System.ComponentModel.BaseNumberConverter` default constructor][0] was ***removed***: <h3>Type Changed: System.ComponentModel.BaseNumberConverter</h3> <p>Removed constructor:</p> <pre> <span class='removed removed-constructor breaking' data-is-breaking>protected BaseNumberConverter ();</span> </pre> On the surface this looks like a questionable API break. However, consider the [`BaseNumberConverter` source code][1], which contains `internal abstract` members: partial abstract class BaseNumberConverter { internal abstract Type TargetType { get; } internal abstract object FromString(string value, int radix); // ... } The existence of these `internal abstract` members means that the type cannot possibly be inherited by a non-`abstract` class, nor can such a subclass be instantiated via `new` expression. This in turn means that the "breakage" of removing the default constructor is non- existent; it cannot possibly break existing code. Remove the `BaseNumberConverter` default constructor, so that we no longer flag it as API breakage. [0]: https://docs.microsoft.com/en-us/dotnet/api/system.componentmodel.basenumberconverter.-ctor?view=netframework-4.8#System_ComponentModel_BaseNumberConverter__ctor [1]: https://github.com/dotnet/corefx/blob/master/src/System.ComponentModel.TypeConverter/src/System/ComponentModel/BaseNumberConverter.cs
1 parent ac5b25d commit 7fe95c1

File tree

1 file changed

+0
-5
lines changed

1 file changed

+0
-5
lines changed

reference/System.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5092,11 +5092,6 @@
50925092
</methods>
50935093
</class>
50945094
<class name="BaseNumberConverter" type="class" base="System.ComponentModel.TypeConverter" abstract="true" charset="Ansi" layout="Auto">
5095-
<constructors>
5096-
<constructor name=".ctor()" attrib="6276">
5097-
<parameters />
5098-
</constructor>
5099-
</constructors>
51005095
<methods>
51015096
<method name="CanConvertFrom(System.ComponentModel.ITypeDescriptorContext, System.Type)" attrib="198" virtual="true" is-override="true" returntype="System.Boolean">
51025097
<parameters>

0 commit comments

Comments
 (0)