A couple of changes included:
authorAlex Ghiondea <ghiondea.alexandru@microsoft.com>
Mon, 31 Oct 2016 21:37:00 +0000 (14:37 -0700)
committerAlex Ghiondea <ghiondea.alexandru@microsoft.com>
Mon, 31 Oct 2016 21:37:00 +0000 (14:37 -0700)
      - Make sure we have a way to disable building with the Roslyn compiler. That should only happen in the internal build.
      - Update the FeatureSpanOfT to also condition on using the latest compiler
      - Introduce an if/def in string.cs for code that uses the ref locals / ref return.
      - Make sure we only include the CryptographicException when building CoreCLR
      - Update the PInvokeMap.txt file to include the right set of APIs.
      - Remove duplicated APIs from PInvokeMap.txt

[tfs-changeset: 1636041]

clr.coreclr.props
src/mscorlib/System.Private.CoreLib.csproj
src/mscorlib/mscorlib.shared.sources.props
src/mscorlib/src/System/String.cs

index ec9c23f..26e2118 100644 (file)
@@ -34,7 +34,7 @@
     <FeatureMergeJitAndEngine>true</FeatureMergeJitAndEngine>
     <FeatureMulticoreJIT>true</FeatureMulticoreJIT>
     <FeaturePrejit>true</FeaturePrejit>
-    <FeatureSpanOfT>true</FeatureSpanOfT>
+    <FeatureSpanOfT Condition="'$(UseLegacyCompiler)'!='true'">true</FeatureSpanOfT>
     <FeatureStandaloneSn>true</FeatureStandaloneSn>
     <FeatureStrongnameDelaySigningAllowed>true</FeatureStrongnameDelaySigningAllowed>
     <FeatureStrongnameMigration>true</FeatureStrongnameMigration>
index a24270a..f1f944a 100644 (file)
@@ -2,7 +2,7 @@
 <Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 
   <!-- Always use latest Roslyn compiler -->
-  <Import Project="..\..\Tools\net45\roslyn\build\Microsoft.Net.Compilers.props" Condition="'$(OS)'=='Windows_NT'" />
+  <Import Project="..\..\Tools\net45\roslyn\build\Microsoft.Net.Compilers.props" Condition="'$(OS)'=='Windows_NT' and '$(UseLegacyCompiler)'!='true'" />
 
   <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
   
index 6de7f43..d46d8f1 100644 (file)
     <SecuritySources Include="$(BclSourcesRoot)\System\Security\SecurityZone.cs" />
     <SecuritySources Include="$(BclSourcesRoot)\System\Security\VerificationException.cs" />
     <SecuritySources Condition="'$(FeatureLegacySurface)' == 'true'" Include="$(BclSourcesRoot)\System\Security\securestring.cs" />
-    <SecuritySources Include="$(CoreFxSourcesRoot)\System\Security\CryptographicException.cs" />
   </ItemGroup>
 
   <ItemGroup>
     <BuffersSources Include="$(CoreFxSourcesRoot)\System\Buffers\DefaultArrayPool.cs" />
     <BuffersSources Include="$(CoreFxSourcesRoot)\System\Buffers\DefaultArrayPoolBucket.cs" />
     <BuffersSources Include="$(CoreFxSourcesRoot)\System\Buffers\Utilities.cs" />
+    <SecuritySources Include="$(CoreFxSourcesRoot)\System\Security\CryptographicException.cs" />
   </ItemGroup>
   <ItemGroup Condition="'$(FeatureCoreFxWindowsInterop)' == 'true'">
     <WindowsInteropSources Include="$(CoreFxSourcesRoot)\System\HResults.cs" />
index bcf869f..e41429e 100644 (file)
@@ -886,8 +886,10 @@ namespace System {
             }
         }
 
+#if FEATURE_SPAN_OF_T
         internal ref char GetFirstCharRef() {
             return ref m_firstChar;
         }
+#endif
     }
 }