Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
908 commits
Select commit Hold shift + click to select a range
aa8775d
Merge pull request #40454 from CyrusNajmabadi/sharedPools
JoeRobich Dec 17, 2019
1331a9d
Merge pull request #40150 from tmat/RemoteCalls
JoeRobich Dec 18, 2019
f43ecb3
Remove unnecessary variables
allisonchou Dec 18, 2019
7d0e777
Merge remote-tracking branch 'upstream/master' into simplifyInterpola…
CyrusNajmabadi Dec 18, 2019
2d29bb3
Add tests
CyrusNajmabadi Dec 18, 2019
bf149af
Simplify
CyrusNajmabadi Dec 18, 2019
a671359
Simplify
CyrusNajmabadi Dec 18, 2019
e2f4946
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 18, 2019
74c3963
Merge branch 'master' into ExtractLocalFunctionNamingConvention
allisonchou Dec 18, 2019
0dcdbe5
Enable previously skipped ests
allisonchou Dec 18, 2019
774546b
Enable skipped tests
allisonchou Dec 18, 2019
8971af1
Fix
CyrusNajmabadi Dec 18, 2019
ff6d1ee
Use usings
CyrusNajmabadi Dec 18, 2019
473bb07
rename
CyrusNajmabadi Dec 18, 2019
ab00087
Simplify
CyrusNajmabadi Dec 18, 2019
c96ee86
Simplify
CyrusNajmabadi Dec 18, 2019
5d44163
Nullable Progress
jaredpar Dec 4, 2019
eddb34a
InternalUtilities
jaredpar Dec 7, 2019
2670cc6
Diagnostics
jaredpar Dec 10, 2019
35a265c
PR feedback
jaredpar Dec 10, 2019
4d46f05
PR feedback
jaredpar Dec 13, 2019
66c1362
Respond to PR feedback
jaredpar Dec 17, 2019
5610585
Fix a warning
jaredpar Dec 18, 2019
cf9bc9e
Hopefully fixed test failure
allisonchou Dec 18, 2019
c31868d
One more place
CyrusNajmabadi Dec 18, 2019
2b8a9f7
Merge pull request #40070 from CyrusNajmabadi/simplifyInterpolation
Dec 18, 2019
4b4ce21
Merge pull request #40316 from jasonmalinowski/remove-nullable-helper…
jasonmalinowski Dec 18, 2019
34df656
Remove CompilationWithAnalyzers.IsDiagnosticAnalyzerSuppressed checks…
mavasani Dec 18, 2019
4ef834c
Merge pull request #40372 from CyrusNajmabadi/highlightPerf
Dec 18, 2019
1fd1ff3
Remove null from Diagnostic.Arguments
jaredpar Dec 18, 2019
f47c78f
Merge pull request #40268 from jaredpar/nullable2
jaredpar Dec 19, 2019
d0dfb57
Give errors on implicit conversions to 'void' (#40465)
RikkiGibson Dec 19, 2019
ec603dc
Use a temp for pattern input when a local or parameter is ref/in/out …
RikkiGibson Dec 19, 2019
8aaffba
remove surplus 'd'
06needhamt Dec 19, 2019
2a740c3
Merge pull request #40484 from jaredpar/nullable2.1
jaredpar Dec 19, 2019
fb0cb69
Report missing Exception type when binding throw (#40145)
Dec 19, 2019
9e264e5
Add missing back compat overload
mavasani Dec 19, 2019
191bd22
Merge pull request #40359 from 06needhamt/patch-37678
JoeRobich Dec 19, 2019
ab501b8
Merge pull request #40504 from mavasani/MissingBackCompatOverload
mavasani Dec 19, 2019
7a20228
Fix nullable annotations for ValueSource (#40222)
tmat Dec 19, 2019
3f4d239
Convert positions to columns where needed in the StringSplitter
dpoeschl Dec 19, 2019
d745979
Add unit tests
dpoeschl Dec 19, 2019
a4a9cb4
Merge pull request #40456 from dotnet/features/editorconfig-generated…
mavasani Dec 20, 2019
804d73e
Assert that ParsingTests.N nodes are not missing, fix up tests that d…
333fred Dec 20, 2019
e09c42a
Merge pull request #40521 from 333fred/verify-not-missing
Dec 20, 2019
a40a2b6
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 20, 2019
b572bc8
Improve resource management in TestWorkspaceFixture
sharwell Dec 3, 2019
81a2a4f
Merge pull request #40488 from mavasani/AnalyzerSuppression
mavasani Dec 20, 2019
0569397
Merge pull request #40418 from jessetrinity/tsRemoveDiagnosticsOnDocC…
mavasani Dec 20, 2019
fa3e4ef
Make sure tab-based tests haven't been reformatted.
dpoeschl Dec 20, 2019
cad1a2f
Better calculation of column offset
dpoeschl Dec 20, 2019
f1282cc
Merge pull request #40514 from sharwell/gc-resources
sharwell Dec 20, 2019
750b1ef
Extract 'use var' from 'simplify type names'
CyrusNajmabadi Dec 20, 2019
42e771c
Add comments
CyrusNajmabadi Dec 20, 2019
5d36754
Only run if option is enabled
CyrusNajmabadi Dec 20, 2019
25a8747
Only run if option is enabled
CyrusNajmabadi Dec 20, 2019
e4c180e
Fix
CyrusNajmabadi Dec 20, 2019
8028850
Simplify
CyrusNajmabadi Dec 20, 2019
7b3e995
Simplify type names shoudl nto simplify to 'var'
CyrusNajmabadi Dec 20, 2019
d1aa885
Add tests
CyrusNajmabadi Dec 21, 2019
261bc01
Tweak lookup to produce less LookupResult churn (#40437)
CyrusNajmabadi Dec 21, 2019
f9a3ae7
Add comment
CyrusNajmabadi Dec 21, 2019
90f6c97
Simplify
CyrusNajmabadi Dec 21, 2019
c607bbf
Proper order
CyrusNajmabadi Dec 21, 2019
59fe532
Simplify and inline
CyrusNajmabadi Dec 21, 2019
06d7552
change
CyrusNajmabadi Dec 21, 2019
f951b28
change
CyrusNajmabadi Dec 21, 2019
cbe5c15
Obsolete non-editor-config simplification options.
CyrusNajmabadi Dec 21, 2019
0160915
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 21, 2019
3bd85cc
Merge remote-tracking branch 'upstream/master' into simplifyTypeNames…
CyrusNajmabadi Dec 22, 2019
9184262
Remove obsolete symbols
CyrusNajmabadi Dec 22, 2019
14509e7
Test updates
CyrusNajmabadi Dec 22, 2019
e7d7db1
Test updates
CyrusNajmabadi Dec 22, 2019
37cbb12
Don't allow named arguments for implicit indexers
YairHalberstadt Dec 22, 2019
8614121
Do not include binding cache in BoundLambda (#40534)
cston Dec 23, 2019
86b766f
Fixed comment
lameox Dec 23, 2019
bc98ebc
[master] Update dependencies from dotnet/arcade (#40557)
dotnet-maestro[bot] Dec 23, 2019
4278a17
Merge pull request #40284 from allisonchou/ExtractLocalFunctionNaming…
allisonchou Dec 23, 2019
ee79d02
Refactor
allisonchou Dec 24, 2019
3a1fb31
Merge branch 'master' of github.com:dotnet/roslyn into IntroduceLocalBug
allisonchou Dec 24, 2019
3ff5929
CHanges based on review by @AlekseyTs
YairHalberstadt Dec 24, 2019
0750132
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 24, 2019
7dff3e0
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 25, 2019
b57e4f5
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 26, 2019
07e7b2f
FIx formatting error.
YairHalberstadt Dec 26, 2019
6d28886
Don't allow named arguments for implicit indexers (#40556)
333fred Dec 26, 2019
d7174fc
Fix case where the simplification system doesn't simplify properly.
CyrusNajmabadi Dec 27, 2019
13bfc03
Add tesT
CyrusNajmabadi Dec 27, 2019
4eae4b7
Add test
CyrusNajmabadi Dec 27, 2019
a37e546
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 27, 2019
cf6da88
Merge branch 'master' of github.com:dotnet/roslyn into IntroduceLocalBug
allisonchou Dec 27, 2019
db9b4db
Add tests for cases that should pass
CyrusNajmabadi Dec 28, 2019
dde71bc
Implemented fix, to-do: Fix tests
allisonchou Dec 28, 2019
199c1f9
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 28, 2019
6dd004a
Fix cref Color Color case
CyrusNajmabadi Dec 28, 2019
3646adf
Simplify Color Color case properly in crefs
CyrusNajmabadi Dec 28, 2019
c925c80
Fix test
CyrusNajmabadi Dec 28, 2019
90a6bf6
Add logging
CyrusNajmabadi Dec 28, 2019
2cf437a
log
CyrusNajmabadi Dec 28, 2019
748d6ab
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Dec 29, 2019
d0e39b0
Proper IDs for crefs
CyrusNajmabadi Dec 30, 2019
981e833
Fix
CyrusNajmabadi Dec 30, 2019
960b621
Whitespce
CyrusNajmabadi Dec 30, 2019
a65faad
Whitespce
CyrusNajmabadi Dec 30, 2019
273aa0a
Disable
CyrusNajmabadi Dec 30, 2019
d24409c
Add attributes
CyrusNajmabadi Dec 30, 2019
c1deafc
Fix NRE during InteractiveWindow disposal (#40542)
tmat Dec 30, 2019
7d037a5
Merge remote-tracking branch 'upstream/master' into simplifyTypeNames…
CyrusNajmabadi Dec 30, 2019
2af3494
Make readonly
CyrusNajmabadi Dec 30, 2019
6aa3e57
Reduce Task allocations in the analyzer driver
sharwell Dec 30, 2019
136edb1
Merge pull request #40535 from CyrusNajmabadi/simplifyTypeNamesWork
sharwell Dec 30, 2019
3c10ede
Make struct readonly
sharwell Dec 30, 2019
6ed040c
Merge remote-tracking branch 'upstream/master' into simplifyFix
CyrusNajmabadi Dec 30, 2019
068d21a
Merge branch 'master' into dupe_error_list
dibarbet Dec 30, 2019
5d17ae3
Fixed tests + refactoring
allisonchou Dec 30, 2019
3138ebb
Accidentally deleted part of an old commit
allisonchou Dec 30, 2019
09bd524
Address review feedback.
dibarbet Dec 30, 2019
f17a631
Merge pull request #40018 from genlu/FixChangeNamespace
genlu Dec 30, 2019
ce313c2
Add newline
allisonchou Dec 30, 2019
15848ff
Maximally simplify code.
CyrusNajmabadi Dec 30, 2019
eb26598
Merge pull request #40441 from allisonchou/IntroduceLocalBug
allisonchou Dec 30, 2019
c7b4885
Simplify generics
CyrusNajmabadi Dec 30, 2019
30ea7eb
Simplify
CyrusNajmabadi Dec 30, 2019
4dc9181
log
CyrusNajmabadi Dec 30, 2019
a040463
Merge pull request #40643 from sharwell/driver-tasks
sharwell Dec 31, 2019
82d1c77
Add test
CyrusNajmabadi Dec 31, 2019
05920db
Fix invalid use of nullable in cref
CyrusNajmabadi Dec 31, 2019
1477e57
[master] Update dependencies from dotnet/arcade (#40642)
dotnet-maestro[bot] Dec 31, 2019
90df22e
Enable Nullable Reference Types for ReferenceCountedDisposable<T>
sharwell Dec 30, 2019
81b2b9b
Avoid direct construction of CodeRefactoringService
sharwell Dec 30, 2019
e05ed13
Add issue links to issue likely to be hit when porting compiler to co…
Dec 31, 2019
d340092
Clean up some dead comments. (#40661)
Dec 31, 2019
100bd9d
Fix extract method using bug + add tests
allisonchou Dec 31, 2019
c133623
Changes based on feedback
allisonchou Dec 31, 2019
5c179e8
Merge pull request #40410 from sharwell/use-index
sharwell Dec 31, 2019
0eb7afb
Merge pull request #40419 from sharwell/avoid-closure
sharwell Dec 31, 2019
61448a8
Merge pull request #40671 from sharwell/readonly-progressdata
sharwell Dec 31, 2019
04df594
Implement support for CodeRefactoringProvider in NuGet packages
sharwell May 13, 2019
1cbc18d
Merge pull request #39393 from allisonchou/SwitchStatement2
allisonchou Dec 31, 2019
5ae6993
Eliminate fast-path allocations in CodeRefactoringService.GetProviders
sharwell Dec 31, 2019
632138d
Reduce closure allocations in CodeRefactoringService
sharwell Dec 31, 2019
996119f
Simplify code per code reviews
sharwell Dec 31, 2019
4223115
Merge pull request #40651 from allisonchou/LocalizationBug
allisonchou Jan 1, 2020
1ae0fe9
Merge pull request #40669 from sharwell/nullable-rcd
sharwell Jan 1, 2020
fc8a3b8
Update dependencies from https://github.com/dotnet/arcade build 20191…
dotnet-maestro[bot] Jan 1, 2020
4e95839
Merge remote-tracking branch 'upstream/master' into simplifyTypeNames…
CyrusNajmabadi Jan 1, 2020
7c90593
Avoid iterator allocations in Diagnostic.HasIntersectingLocation
sharwell Jan 2, 2020
75625b3
Avoid boxing allocations in CSDiagnosticInfo.AdditionalLocations
sharwell Jan 2, 2020
9f953e0
Simplify HasIntersectingLocation by only optimizing for empty Additio…
sharwell Jan 2, 2020
e0e7411
Merge pull request #39739 from sharwell/run-refactoring
sharwell Jan 2, 2020
06c0c38
Nullable annotations for Compilation
jaredpar Dec 10, 2019
a03e0d2
Rest of compilation
jaredpar Dec 19, 2019
a7b7f0b
PR feedback
jaredpar Dec 19, 2019
8e16000
PR feedback
jaredpar Dec 19, 2019
116494f
Small fixup
jaredpar Dec 19, 2019
7e5dde9
Fix merge issue
jaredpar Jan 2, 2020
87f1b05
Remove unnecessary conditions to simplify code
sharwell Jan 2, 2020
321628a
Inline getDiagnosticLocationsWithinTree
sharwell Jan 2, 2020
113f393
Merge pull request #40493 from jaredpar/nullable3
jaredpar Jan 2, 2020
8b2bfdf
Update dependencies from https://github.com/dotnet/arcade build 20200…
dotnet-maestro[bot] Jan 2, 2020
f19813a
Enable nullable reference types for CSharpExtensions
sharwell Jan 2, 2020
67157cd
Avoid boxing Boolean in SyntaxTreeSemanticModel.GetMemberSemanticModel
sharwell Jan 1, 2020
da7fc02
Document performance scenario and constraints
sharwell Jan 2, 2020
2501c21
Merge branch 'master' into dupe_error_list
dibarbet Jan 2, 2020
6ea5c7e
Merge pull request #39649 from dibarbet/dupe_error_list
dibarbet Jan 2, 2020
905dea4
Fix using compiler directive bug + add tests
allisonchou Jan 2, 2020
c28877d
Inline helper method
sharwell Jan 2, 2020
05fac0c
Add missing null check
sharwell Jan 2, 2020
e51955a
Enable nullable reference types for Roslyn.Services.UnitTests.Utilities
sharwell Jan 2, 2020
dbca6b5
Rename variable
CyrusNajmabadi Jan 2, 2020
9bf1f94
Merge pull request #40706 from allisonchou/compiler-directives-using-bug
allisonchou Jan 2, 2020
3ddf1c5
Merge pull request #40700 from sharwell/nullable-extensions
sharwell Jan 2, 2020
8eaf6a9
Annotate SyntaxNode
jaredpar Dec 19, 2019
fcb76c9
Annotate SyntaxToken
jaredpar Jan 2, 2020
26454f9
Fixed formatting
jaredpar Jan 2, 2020
4cd828a
Merge pull request #40701 from sharwell/avoid-boxing
sharwell Jan 3, 2020
1ded128
Merge pull request #40697 from sharwell/nullable-utils
sharwell Jan 3, 2020
a3c3a44
Merge pull request #40695 from sharwell/intersecting-location
sharwell Jan 3, 2020
7103adf
Respond to PR feedback
jaredpar Jan 2, 2020
299e605
Merge remote-tracking branch 'dotnet/master' into symbol-annotations-4
sharwell Jan 3, 2020
4cfa2a1
Respond to PR feedback
jaredpar Jan 3, 2020
2283b75
Update annotations for types implementing IAliasSymbol
sharwell Jan 3, 2020
a2824c9
Use AsyncLazy to cache syntax context tasks to avoid endlessly returning
dibarbet Jan 3, 2020
06f91f3
PR feedback
jaredpar Jan 3, 2020
8e5b95f
PR feedback
jaredpar Jan 3, 2020
1010ef6
Determine whether a stackalloc expression is target-typed when it is …
Jan 3, 2020
ce10fd1
Merge pull request #40515 from dpoeschl/StringSplitterFixWithTabs
Jan 3, 2020
fbb1d5c
Merge pull request #40699 from jaredpar/nullable4
jaredpar Jan 3, 2020
94d1d14
Merge pull request #40357 from sharwell/prds-error-handling
sharwell Jan 3, 2020
a666d27
Refactored AnstractRmoveUnusedVariableCodeFixProvider
lameox Jan 3, 2020
e7e7030
Merge remote-tracking branch 'upstream/master' into simplifyTypeNames…
CyrusNajmabadi Jan 3, 2020
44360fa
Provide message
CyrusNajmabadi Jan 3, 2020
9ad1901
Remove unnecessary parameter
CyrusNajmabadi Jan 3, 2020
9473c77
Remove unnecessary parameter
CyrusNajmabadi Jan 3, 2020
f2c528f
Treat 0- and 1-tuple symbols as tuples (#40459)
jcouv Jan 3, 2020
7df1238
Null check added
allisonchou Jan 3, 2020
639950a
Fixed null check
allisonchou Jan 3, 2020
d907bee
Forgot a paren
allisonchou Jan 3, 2020
c6d4231
Merge pull request #40712 from dibarbet/cache_cancellation
dibarbet Jan 3, 2020
17a2845
Annotated SyntaxList
jaredpar Jan 2, 2020
06b439d
PR feedback
jaredpar Jan 3, 2020
e314c74
PR feedback
jaredpar Jan 3, 2020
1c960cb
Update src/Compilers/Core/Portable/Syntax/SyntaxList.cs
jaredpar Jan 3, 2020
5df75e6
PR feedback
jaredpar Jan 3, 2020
537c00b
PR feedback
jaredpar Jan 3, 2020
6e310e2
address review feedback
dibarbet Jan 3, 2020
8bdeb9b
Merge branch 'master' into ilanguageclient_pr
dibarbet Jan 3, 2020
47c5b2b
Merge branch 'master' into ilanguageclient_pr
dibarbet Jan 3, 2020
8e507a5
Restore suppression
jaredpar Jan 3, 2020
6f18965
Add test
CyrusNajmabadi Jan 3, 2020
f272e30
Annotate and clean up C# EE (#40698)
tmat Jan 3, 2020
25e49a2
Revert
allisonchou Jan 3, 2020
e5e4505
Move run code actions back to liveshare layer so that we can switch t…
dibarbet Jan 4, 2020
c18811b
Expose display option to add ! on non-nullable types (#40519)
jcouv Jan 4, 2020
46954a8
Merge pull request #40320 from dibarbet/ilanguageclient_pr
dibarbet Jan 4, 2020
d2c7f36
Merge pull request #40681 from allisonchou/ExtractMethodUsingBug
allisonchou Jan 4, 2020
d35a8bd
Merge pull request #40616 from CyrusNajmabadi/simplifyFix
sharwell Jan 4, 2020
999ce12
Merge pull request #35685 from sharwell/refactorings
sharwell Jan 4, 2020
bdbd2f6
[master] Update dependencies from dotnet/arcade (#40718)
dotnet-maestro[bot] Jan 4, 2020
ece86d5
Merge pull request #40544 from CyrusNajmabadi/simplifyTypeNamesWork3
sharwell Jan 4, 2020
ef4e36f
Update dependencies from https://github.com/dotnet/arcade build 20200…
dotnet-maestro[bot] Jan 5, 2020
6e03c8b
Merge remote-tracking branch 'dotnet/master' into symbol-annotations-4
sharwell Jan 6, 2020
cbb0b3d
Pass non-null arguments to avoid nullability warning
sharwell Jan 6, 2020
86b6392
Handle dependent slots in pattern-matching null tests. (#39625)
Jan 6, 2020
42304bd
Ignore dynamic vs object, etc in pattern-matching machinery. (#40677)
Jan 6, 2020
3892c63
Report erroneous implicit conversions in a switch expression (#40678)
Jan 6, 2020
9cd70df
Merge pull request #40412 from lameox/Fix-RemoveUnusedVariablesInForL…
mavasani Jan 6, 2020
8a6d920
PR feedback
jaredpar Jan 6, 2020
6d27790
Merge pull request #36237 from filipw/bugfix/humanizer
sharwell Jan 6, 2020
403833e
Revert "Merge pull request #40410 from sharwell/use-index"
dibarbet Jan 6, 2020
61bc020
Improve error message for CS0191 (#40748)
06needhamt Jan 6, 2020
2cb6d2d
Merge pull request #40729 from jaredpar/nullable4.1
jaredpar Jan 6, 2020
63ce34d
Update configs for preview 2 snap
dibarbet Jan 6, 2020
f438a41
Unskip and fix integration test
mavasani Jan 6, 2020
8d35978
Update PublishData.json
dibarbet Jan 6, 2020
9ba266a
More refactoring and hardening of remote calls (#40395)
tmat Jan 7, 2020
8e9c73b
address feedback
dibarbet Jan 7, 2020
0cdfe91
More feedback
dibarbet Jan 7, 2020
a9989fd
Merge pull request #40765 from dibarbet/revert_use_index
dibarbet Jan 7, 2020
3918f04
Merge pull request #40761 from dibarbet/fix_run_code_actions
dibarbet Jan 7, 2020
50aede3
Merge pull request #40769 from dibarbet/snap_16_5_P2
dibarbet Jan 7, 2020
ed05e26
Merge pull request #40770 from mavasani/EnableIntegrationTest
mavasani Jan 7, 2020
17ea362
Revert "Merge pull request #40765 from dibarbet/revert_use_index"
dibarbet Jan 7, 2020
507d405
Merge pull request #39186 from sharwell/symbol-annotations-4
sharwell Jan 8, 2020
89f4177
Annotate CSharpCompilation (#40752)
jcouv Jan 8, 2020
e94cd67
Merge pull request #40790 from dotnet/dev/dibarbet/revert_revert_use_…
dibarbet Jan 8, 2020
cb2970c
Fix race condition in CodeFixService
mavasani Jan 8, 2020
e1ac8e4
Improve nullable analysis of local functions (#40422)
agocke Jan 8, 2020
d25991b
Merge pull request #40814 from mavasani/FixRaceCodeFixService
mavasani Jan 8, 2020
9e13c01
Merge remote-tracking branch 'dotnet/master' into merge-master
333fred Jan 8, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -186,9 +186,6 @@ $RECYCLE.BIN/
# Mac desktop service store files
.DS_Store

# Visual Studio Code
.vscode/

# JetBrains Rider
.idea/

Expand Down
39 changes: 39 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "build",
"command": "./build.cmd",
"type": "shell",
"args": [
],
"problemMatcher": "$msCompile",
"group": "build"
},
{
"label": "build skip analyzers",
"command": "./build.cmd",
"type": "shell",
"args": [
"-skipAnalyzers"
],
"problemMatcher": "$msCompile",
"group": "build"
},
{
"label": "build csc skip analyzers",
"command": "dotnet",
"type": "shell",
"args": [
"msbuild",
"-p:UseRoslynAnalyzers=false",
"-p:GenerateFullPaths=true",
"src/Compilers/CSharp/csc/csc.csproj"
],
"problemMatcher": "$msCompile",
"group": "build"
}
]
}
1 change: 1 addition & 0 deletions NuGet.config
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
<packageSources>
<clear />
<add key="dotnet-core" value="https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json" />
<add key="dotnet-eng" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json" />
<add key="system-commandline" value="https://dotnet.myget.org/F/system-commandline/api/v3/index.json" />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
<add key="myget-dotnet-coreclr" value="https://dotnet.myget.org/F/dotnet-coreclr/api/v3/index.json" />
Expand Down
7 changes: 4 additions & 3 deletions docs/Language Feature Status.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,12 @@ efforts behind them.
| [Relax ordering of `ref` and `partial` modifiers](https://github.com/dotnet/csharplang/issues/946) | [ref-partial](https://github.com/dotnet/roslyn/tree/features/ref-partial) | In Progress | [alrz](https://github.com/alrz) | [gafter](https://github.com/gafter) | [jcouv](https://github.com/jcouv) |
| [Parameter null-checking](https://github.com/dotnet/csharplang/issues/2145) | [param-nullchecking](https://github.com/dotnet/roslyn/tree/features/param-nullchecking) | [In Progress](https://github.com/dotnet/roslyn/issues/36024) | [fayrose](https://github.com/fayrose) | [agocke](https://github.com/agocke) | [jaredpar](https://github.com/jaredpar) |
| [Skip locals init](https://github.com/dotnet/csharplang/issues/1738) | [localsinit](https://github.com/dotnet/roslyn/tree/features/localsinit) | [In Progress](https://github.com/dotnet/roslyn/issues/25780) | [t-camaia](https://github.com/t-camaia), [agocke](https://github.com/agocke) | [jaredpar](https://github.com/jaredpar) | [agocke](https://github.com/agocke) |
| [Lambda discard parameters](https://github.com/dotnet/csharplang/issues/111) | master | [In Progress](https://github.com/dotnet/roslyn/issues/38820) | [jcouv](https://github.com/jcouv) | [AlekseyTs](https://github.com/AlekseyTs), [chsienki](https://github.com/chsienki) | [jcouv](https://github.com/jcouv) |
| [Native ints](https://github.com/dotnet/csharplang/issues/435) | TBD | [In Progress](https://github.com/dotnet/roslyn/issues/38821) | [cston](https://github.com/cston) | [333fred](https://github.com/333fred), [gafter](https://github.com/gafter) | [jaredpar](https://github.com/jaredpar) |
| [Attributes on local functions](https://github.com/dotnet/csharplang/issues/1888) | TBD | [In Progress](https://github.com/dotnet/roslyn/issues/38801) | [RikkiGibson](https://github.com/RikkiGibson) | [agocke](https://github.com/agocke) | [agocke](https://github.com/agocke) |
| [Lambda discard parameters](https://github.com/dotnet/csharplang/issues/111) | master | [Merged](https://github.com/dotnet/roslyn/issues/38820) | [jcouv](https://github.com/jcouv) | [AlekseyTs](https://github.com/AlekseyTs), [chsienki](https://github.com/chsienki) | [jcouv](https://github.com/jcouv) |
| [Native ints](https://github.com/dotnet/csharplang/issues/435) | [features/NativeInt](https://github.com/dotnet/roslyn/tree/features/NativeInt) | [In Progress](https://github.com/dotnet/roslyn/issues/38821) | [cston](https://github.com/cston) | [333fred](https://github.com/333fred), [gafter](https://github.com/gafter) | [jaredpar](https://github.com/jaredpar) |
| [Attributes on local functions](https://github.com/dotnet/csharplang/issues/1888) | [features/local-function-attributes](https://github.com/dotnet/roslyn/tree/features/local-function-attributes) | [In Progress](https://github.com/dotnet/roslyn/issues/38801) | [RikkiGibson](https://github.com/RikkiGibson) | [agocke](https://github.com/agocke) | [agocke](https://github.com/agocke) |
| [Function pointers](https://github.com/dotnet/csharplang/issues/191) | [function-pointers](https://github.com/dotnet/roslyn/tree/features/function-pointers) | [In Progress](https://github.com/dotnet/roslyn/issues/38830) | [333fred](https://github.com/333fred) | [AlekseyTs](https://github.com/AlekseyTs) | [jaredpar](https://github.com/jaredpar) |
| [Pattern matching improvements](https://github.com/dotnet/csharplang/issues/2850) | [features/patterns3](https://github.com/dotnet/roslyn/tree/features/patterns3) | In progress | [gafter](https://github.com/gafter) | [RikkiGibson](https://github.com/RikkiGibson),[agocke](https://github.com/agocke) | [gafter](https://github.com/gafter) |
| [Static lambdas](https://github.com/dotnet/csharplang/issues/275) | [features/static-lambdas](https://github.com/dotnet/roslyn/tree/features/static-lambdas) | [In progress](https://github.com/dotnet/roslyn/issues/39606) | [CyrusNajmabadi](https://github.com/CyrusNajmabadi) | [jcouv](https://github.com/jcouv) | [jcouv](https://github.com/jcouv) |

# C# 8.0

Expand Down
23 changes: 23 additions & 0 deletions docs/compilers/CSharp/Compiler Breaking Changes - post VS2019.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,3 +78,26 @@ could be different than the one that compiler used to find.
```

11. Previously, the language version was not checked for `this ref` and `this in` orderings of parameter modifiers. In *Visual Studio 2019 version 16.4* these orderings produce an error with langversion below 7.2. See https://github.com/dotnet/roslyn/issues/38486

12. https://github.com/dotnet/roslyn/issues/40092 Previously, the compiler allowed `extern event` declarations to have initializers, in violation of the C# language specification. In *Visual Studio 2019 version 16.5* such declarations produce compile errors.
```C#
class C
{
extern event System.Action E = null; // error
}
```

13. https://github.com/dotnet/roslyn/issues/10492 Under some circumstances, the compiler would accept an expression that does not obey the rules of the language grammar. Examples include
- `e is {} + c`
- `e is T t + c`

These all have in common that the left operand is of looser precedence than the `+` operator, but the left operand does not end in an expression so it cannot "consume" the addition. Such expressions will no longer be permitted in Visual Studio 2019 version 16.5 and later.

14. In Visual Studio version 15.0 and onwards, the compiler would allow compiling some malformed definitions of the `System.ValueTuple` types. For instance, one with a private `Item1` field. In *Visual Studio 2019 version 16.5* such definitions produce warnings.

15. In Visual Studio version 15.0 and onwards, the compiler APIs would produce non-generic tuple symbols (`Arity` would be 0, would have no type arguments, would be original definitions). In *Visual Studio 2019 version 16.5* a 2-tuple symbol has `Arity` 2, and a 9-tuple symbol has `Arity` 8 (since it is a `ValueTuple'8`).


16. In *Visual Studio 2019 version 16.5* and language version 8.0 and later, the compiler will no longer accept `throw null` when there is no type `System.Exception`.

17. https://github.com/dotnet/roslyn/issues/39852 Previously the compiler would allow an invocation of an implicit index or range indexer to specify any named argument. In *Visual Studio 2019 version 16.5* argument names are no longer permitted for these invocations.
18 changes: 18 additions & 0 deletions docs/compilers/Design/Bound Node Design.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
Bound Node Design
=================

This document discusses design principles for the bound nodes.

### The shape of the bound tree should correspond to the shape of the program's static semantics

Generally speaking, that means that there is an isomorphism between the syntax and bound nodes, except when there is a mismatch between the shape of the syntax and semantics, in which case they model the shape of the semantics. When possible, we prefer the correspondence be as direct as possible. Here are two examples that illustrate this:
1. Parenthesized expressions do not appear in the bound nodes because they have no semantic meaning.
2. Query expressions are given a semantic meaning by correspondence to a translated form, so the bound nodes may model the translated form.

### Bound nodes should capture all semantic information embedded in the syntax

A consumer of the bound nodes should not need to examine the syntax from which they were produced to understand the meaning of the bound nodes. All relevant semantic information that comes from the syntax should be summarized in the fields of the bound node. If a consumer of a bound node needs to refer to the syntax to affect the meaning of the code, that is a design smell.

### Every bound node type is either abstract or sealed

In `BoundNodes.xml`, a `Node` should have a base that is `BoundNode` or a node type declared `AbstractNode`. Do not inherit a concrete node type from another concrete node type.
3 changes: 2 additions & 1 deletion docs/contributing/Compiler Test Plan.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ This document provides guidance for thinking about language interactions and tes
- events (including add/remove accessors)
- Parameter modifiers (ref, out, in, params)
- Attributes (including security attribute)
- Generics (type arguments, variance, constraints including `class`, `struct`, `new()`, `unmanaged`)
- Generics (type arguments, variance, constraints including `class`, `struct`, `new()`, `unmanaged`, `notnull`, types and interfaces with nullability)
- Default and constant values
- Partial classes
- Literals
Expand All @@ -62,6 +62,7 @@ This document provides guidance for thinking about language interactions and tes
- Dynamic
- Ref structs, Readonly structs
- Readonly members on structs (methods, property/indexer accessors, custom event accessors)
- SkipLocalsInit

# Code
- Operators (see Eric's list below)
Expand Down
24 changes: 24 additions & 0 deletions docs/features/skiplocalsinit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@

# Feature design for SkipLocalsInit

The feature is to add a new well-known attribute to the compiler, System.Runtime.CompilerServices.SkipLocalsInit that causes method bodies nested "inside" the scope of the attribute to elide the ".locals init" CIL directive that causes the CLR to zero-init local variables and space reserved using the "localloc" instruction. "Nested inside the scope of the attribute" is a concept defined as follows:

1. When the attribute is applied to a module, all emitted methods inside that module, including generated methods, will skip local initialization.

2. When the attribute is applied to a type (including interfaces), all methods transitively inside that type, including generated methods, will skip local initialization. This includes nested types.

3. When the attribute is applied to a method, the method and all methods generated by the compiler which contain user-influenced code inside that method (e.g., local functions, lambdas, async methods) will skip local initialization.

For the above, generated methods will skip local initialization only if they have user code inside them, or a significant number of
compiler-generated locals. For example, the MoveNext method of an async method will skip local initialization, but the constructor of
a display class probably will not, as the display class constructor likely has no locals anyway.

Some notable decisions:

1. Although SkipLocalsInit does not require unsafe code blocks, it does require the `unsafe` flag to be passed to the compiler. This
is to signal that in some cases code could view unassigned memory, including `stackalloc`.

2. Due to the compiler not controlling localsinit for other modules when emitting to a netmodule, SkipLocalsInit is not respected on
the assembly level, even if the AttributeUsage of the SkipLocalsInitAttribute is specified that it is allowed.

3. The `Inherited` property of the SkipLocalsInitAttribute is not respected. SkipLocalsInit does not propagate through inheritance.
4 changes: 2 additions & 2 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
<ProductDependencies>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="5.0.0-beta.19601.1">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="5.0.0-beta.20054.1">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>c0b56ff3569e3c7475070486c40543ea4c6f6dc7</Sha>
<Sha>96ab522b32ff4d0f7bfc18074fd5ae3673c59d0a</Sha>
</Dependency>
</ToolsetDependencies>
</Dependencies>
Loading