- 19 5月, 2015 34 次提交
-
-
由 Andrew Casey 提交于
Add regression tests for #2441
-
由 Tomáš Matoušek 提交于
Make ICompilationFactoryService internal
-
由 Andrew Casey 提交于
After discussing the matter, @agocke, @tmat and I have concluded that the implementation in EETypeNameDecoder will never be affected by the bug the compiler was seeing. However, we still felt it would be worthwhile to make the implementations consistent. There is, however, no test, since the behavior is unchanged. I added some using/import tests since they use the compiler implementation (which has already been fixed). Fixes #2441
-
由 Andy Gocke 提交于
-
由 AlekseyTs 提交于
Do not hoist ByRef locals used within iterator methods, even when building debug.
-
由 Tomas Matousek 提交于
-
由 Heejae Chang 提交于
made hostanalyzermanager to use object as id type
-
由 Andy Gocke 提交于
-
由 Kevin Pilch-Bisson 提交于
Apply spacing rules to fixed, default, sizeof
-
由 Kevin Pilch-Bisson 提交于
Switch MSBuildWorkspace to use UTF-8 without BOM
-
由 Paul Harrington 提交于
CodeLens Object allocations
-
由 Jared Parsons 提交于
Added missing copyright headers
-
由 AlekseyTs 提交于
Fixes #2862.
-
由 Kevin Pilch-Bisson 提交于
Test for nullref while formatting properties
-
由 Tomáš Matoušek 提交于
Fixes a couple of issues around import scope compilation
-
由 Tom Meschter 提交于
Update the VS AnalyzerDependencyChecker. This commit updates the `AnalyzerDependencyChecker` type to reflect the recent changes to require all analyzers and dependencies to be specified, and the changes in how we load analyzer assemblies. Now that we require all analyzers and dependencies to be specified, we no longer look next to the specified analyzers to optimistically locate dependencies. Instead, we only consider the list of passed-in analyzers *plus* the assemblies already loaded into the `AppDomain`. The latter avoids unhelpful warnings in the event that the analyzer assembly includes a code fix that take a dependency on a Visual Studio assembly, which of course can't be included in the list of analyzers. We now create a warning when we identify a missing dependency. We now also check analyzers themselves for conflicts (i.e., assemblies at different paths with the same identity but different contents) instead of just their dependencies. Fixes #2684. Fixes #2728. Fixes #2738.
-
由 VSadov 提交于
Minor cleanup of C#'s Syntax.xml
-
由 David Poeschl 提交于
Improve rename conflicts in nameof
-
由 Jared Parsons 提交于
Disable the errant Debug.Assert call until #2866 is fixed.
-
由 Tomáš Matoušek 提交于
Remove EOLN check from MarkupTestFile
-
由 Heejae Chang 提交于
-
由 Paul Harrington 提交于
-
由 Tomas Matousek 提交于
-
由 Heejae Chang 提交于
-
由 David Poeschl 提交于
Allow snippets in Inline Diff View
-
由 Tomas Matousek 提交于
-
由 David Poeschl 提交于
Fixes #1195 "Renaming a member to a name used within a nameof is a conflict" When a nameof expression is involved in a rename, conflicts are only introduced if the nameof previously referenced a non-empty set of symbols and the post-rename set of referenced symbols contains none of the previously referenced symbols. This allows overloads to join or exit the set of references without conflicts, but a conflict is still offered if the nameof switches from referencing a method to referencing a local (or similar).
-
由 David Poeschl 提交于
No conflicts on same-named locals of delegate types
-
由 Jason Malinowski 提交于
Use pkgdef matching the language
-
由 Jared Parsons 提交于
-
由 Tom Meschter 提交于
In unit tests, the `AnalyzerDependencyCheckingService` may be null. Check for that case before attempting to use it.
-
由 Paul Harrington 提交于
Allocation reductions in formatting.
-
由 Tom Meschter 提交于
When running the `AnalyzerDependencyChecker` we need to apply assembly binding redirects while checking for missing assemblies. Otherwise we'll report an error that, for example, `System.Collections.Immutable Version=1.1.34` cannot be found when it has instead been redirected to `System.Collections.Immutable Version=1.1.36`.
-
由 Tom Meschter 提交于
Check analyzer consistency after solution load. Right now we only invoke the `AnalyzerDependencyCheckingService` when explicitly pushing a change in the set of analyzers down to the workspace. As we batch up all changes during a solution load and wait to push them to the workspace once at the end, we end up skipping this check until the next time the user adds or removes an analyzer. This change causes us to explicitly run the check when solution load completes.
-
- 18 5月, 2015 6 次提交
-
-
由 Jared Parsons 提交于
The following line inside GetAliasTarget was causing a deadlock in the compiler: bool won = ImmutableInterlocked.InterlockedInitialize(ref _aliasTargetDiagnostics, newDiagnostics.ToReadOnlyAndFree()); The ToReadOnlyAndFree call caused any lazy diagnostics present in the DiagnosticsBag to be promptly evaluated. As a part of evaluation the diagnostics could call back into other compiler code including AliasSymbol.GetAliasTarget. If that happened on the same AliasSymbol instance the compiler would enter a deadlock as _aliasTarget had already been set to a non-null value. The CompareExchange of _aliasTarget is effectively a lock statement ToReadOnlyAndFree is calling out to untrusted code. The fix is to stop doing this by just saving the DiagnosticBag directly vs. calling ToReadOnlyAndFree. This resolves DevDiv 1161400
-
由 Manish Vasani 提交于
Add a new command line compiler switch "/reportanalyzer" to report analyzer execution times
-
由 David Poeschl 提交于
Fixes internal TFS bug #831378 Invoke snippets on the DataBuffer instead of the EditBuffer. Once IVsExpansion.InsertExpansion/InsertNamedExpansion has been invoked on the correct buffer, all remaining processing is the same (formatting, end span tracking, and snippet functions all map their given spans down to the subject buffer for processing).
-
由 Paul Harrington 提交于
-
由 Kevin Pilch-Bisson 提交于
fixed typos mentioned in #2786 and #2787
-
由 David Poeschl 提交于
Fixes #1729 The C# implementation of IRenameRewriterLanguageService.LocalVariableConflict was returning conflicts any time a related invocation expression bound to a local/parameter, but this condition is not indicative of a conflict when the local/parameter is of a delegate type. This change prevents reporting this particular kind of conflict on references to locals & parameters of a delegate type.
-