Skip to content

Commit f3f6175

Browse files
author
Omar Tawfik
committed
Merge pull request #992 from otawfik-ms/roslyn
Merge latest updates from master
2 parents 3a36f79 + 1602805 commit f3f6175

File tree

20 files changed

+1027
-1130
lines changed

20 files changed

+1027
-1130
lines changed

.nuget/NuGet.Config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@
1010
<add key="myget.org roslyn-nightly" value="https://www.myget.org/F/roslyn-nightly" />
1111
<add key="nuget.org" value="https://www.nuget.org/api/v2/" />
1212
</packageSources>
13-
</configuration>
13+
</configuration>

DEVGUIDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ Restart Visual Studio, it should now be running your freshly-built Visual F# IDE
160160

161161
1. The `update.cmd` script adds required strong name validation skips, and NGens the compiler and libraries. This requires admin privileges.
162162
1. The compiler binaries produced are "private" and strong-named signed with a test key.
163-
1. Some additional tools are required to build the compiler, notably `fslex.exe`, `fsyacc.exe`, `FSharp.PowerPack.Build.Tasks.dll`, `FsSrGen.exe`, `FSharp.SRGen.Build.Tasks.dll`, and the other tools found in the `lkg` directory.
163+
1. Some additional tools are required to build the compiler, notably `fslex.exe`, `fsyacc.exe`, `FSharp.PowerPack.Build.Tasks.dll` and the other tools found in the `lkg` directory.
164164
1. The overall bootstrapping process executes as follows
165165
- We first need an existing F# compiler. We use the one in the `lkg` directory. Let's assume this compiler has an `FSharp.Core.dll` with version X.
166166
- We use this compiler to compile the source in this distribution, to produce a "proto" compiler, dropped to the `proto` directory. When run, this compiler still relies on `FSharp.Core.dll` with version X.
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
The copy of FSharp.Core in this directory is version 2.0.50726.900, required by FSharp.SRGen.Build.Tasks.dll and other legacy Power Pack libraries in the parent directory.
1+
The copy of FSharp.Core in this directory is version 2.0.50726.900, required by legacy Power Pack libraries in the parent directory.
22

33
This copy of FSharp.Core.dll should not be referenced as an LKG, it is present merely as a workaround to enable the legacy libraries to work without needing to update the GAC.
-1.05 MB
Binary file not shown.

lkg/FSharp-14.0.23413.0/bin/FSharp.SRGen.targets

Lines changed: 0 additions & 67 deletions
This file was deleted.
-909 KB
Binary file not shown.
-1.09 MB
Binary file not shown.

packages.config

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,6 @@
1212
<package id="Microsoft.CodeAnalysis.Features" version="1.2.0-beta1-20160218-02" targetFramework="net45" />
1313
<package id="Microsoft.CodeAnalysis.Workspaces.Common" version="1.2.0-beta1-20160218-02" targetFramework="net45" />
1414
<package id="Microsoft.VisualStudio.LanguageServices" version="1.2.0-beta1-20160218-02" targetFramework="net46" />
15-
</packages>
15+
<package id="FsSrGen" version="2.0.0" targetFramework="net46" />
16+
<package id="FSharp.SRGen.Build.Tasks" version="2.0.0" targetFramework="net46" />
17+
</packages>

src/FSharpSource.targets

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,8 @@
115115
<MicrosoftCompositionVersion>1.0.30</MicrosoftCompositionVersion>
116116
<SystemCollectionsImmutableVersion>1.1.37</SystemCollectionsImmutableVersion>
117117
<RoslynVersion>1.2.0-beta1-20160218-02</RoslynVersion>
118+
<FsSrGenVersion>2.0.0</FsSrGenVersion>
119+
<FsSrGenBuildTasksVersion>2.0.0</FsSrGenBuildTasksVersion>
118120
</PropertyGroup>
119121

120122
<!-- v2.0-specific flags -->
@@ -710,7 +712,7 @@
710712

711713
<!-- Reference an existing FSI.EXE for use from within MSBuild -->
712714
<PropertyGroup>
713-
<FsSrGenToolPath>$(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin</FsSrGenToolPath>
715+
<FsSrGenToolPath>$(FSharpSourcesRoot)\..\packages\FsSrGen.$(FsSrGenVersion)\lib\net46</FsSrGenToolPath>
714716
<FsLexToolPath>$(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin</FsLexToolPath>
715717
<FsYaccToolPath>$(FSharpSourcesRoot)\..\lkg\FSharp-$(LkgVersion)\bin</FsYaccToolPath>
716718
<FsLexToolExe>fslex.exe</FsLexToolExe>
@@ -723,7 +725,6 @@
723725
<CompileDependsOn>ValidateConfiguration;$(CompileDependsOn);CustomCopyLocalFiles</CompileDependsOn>
724726
<RootNamespace></RootNamespace>
725727
<DocumentationFile>$(OutputPath)$(AssemblyName).xml</DocumentationFile>
726-
<EnsureThereAreNoUnusedFsSrGenResources>false</EnsureThereAreNoUnusedFsSrGenResources>
727728
</PropertyGroup>
728729

729730
<Target Name="ValidateConfiguration">
@@ -761,7 +762,7 @@
761762
</CreateItem>
762763
</Target>
763764

764-
<Import Project="..\lkg\FSharp-$(LkgVersion)\bin\FSharp.SRGen.targets" />
765+
<Import Project="..\packages\FSharp.SRGen.Build.Tasks.$(FsSrGenBuildTasksVersion)\content\FSharp.SRGen.targets" />
765766

766767
<Target Name="ReorderCompileItems"
767768
BeforeTargets="CoreCompile"

src/fsharp/FSharp.Core/array.fs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@ namespace Microsoft.FSharp.Collections
384384
checkNonNull "array" array
385385
let len = array.Length
386386
let rec loop i = i < len && (f array.[i] || loop (i+1))
387-
loop 0
387+
len > 0 && loop 0
388388

389389
[<CompiledName("Contains")>]
390390
let inline contains e (array:'T[]) =

0 commit comments

Comments
 (0)