- 09 1月, 2015 40 次提交
-
-
由 BalajiKris 提交于
Better name generation while extracting nullables. In ConditionalAccess Expression ?. if we have a member binding expression, we now use that to get a smart name. If nothing else works and if the original definition is a nullable, we give back the default parameter name (v) we use in for built in types. (changeset 1394509)
-
由 AlekseyTs 提交于
C#: ?. invocation in context of a statement-expression should be allowed even if result type of the invocation cannot be made nullable. ***NO_CI*** (changeset 1394508)
-
由 mattwar 提交于
Fix implementation of HasLeadingTrivia and HasTrailingTrivia for SyntaxNode, SyntaxToken and SyntaxNodeOrToken. The previous implementation was incorrect when zero-length trivia (elastic markers) were the only trivia. (changeset 1394442)
-
由 jaredpar 提交于
-
由 nmgafter 提交于
-
由 acasey 提交于
Skip intermittently failing test SuppressSyntaxDiagnosticsOnRaiseEventAccessorBasic (DevDiv #1103442). (changeset 1393924)
-
由 mattwar 提交于
Sealed CustomWorkspace to remove temptation to derive from it, and to encourage deriving from Workspace directly. (changeset 1393855)
-
由 mattwar 提交于
Add implementation to support workspaces that want to enable adding/removing projects and changing options duringTryApplyChanges (such as CustomWorkspace). (changeset 1393845)
-
由 shyamn 提交于
Change "Preview Changes" and "Fix All Occurrences" to be implemented as 'flavored' actions and remove the custom support that we had implemented for invoking these actions via the light bulb preview pane. (changeset 1393815)
-
由 nmgafter 提交于
-
由 nmgafter 提交于
We need to use specialized overload resolution rules when creating a call to String.Format for an interpolated string, to avoid calling a params method in unexpanded form. (changeset 1393796)
-
由 manishv 提交于
I also found couple of bugs in the VB implementation of the analyzers during this exercise, which have been fixed. (changeset 1393711)
-
由 brettv 提交于
-
由 v_tagoo 提交于
Updating VSIXManifests to use Version=[4.5,) which is required to support the change to NetFX 4.6. (changeset 1393698)
-
由 mattwar 提交于
Added optional filePath argument to AddDocument overloads. (changeset 1393692)
-
由 AlekseyTs 提交于
C# Null Coalesce + Conditional Access optimization – do not treat decimal zero as IL constant. Fixes #470. ***NO_CI*** (changeset 1393664)
-
由 TomasMatousek 提交于
-
由 ChuckStoner 提交于
-
由 mattwar 提交于
Added SolutionEditor -- enables editting multiple documents. Added SyntaxEditor extensions -- add base and interface types. Added SymbolEditor extensions -- set base type for symbol & get reference to base type or interface declaration for a symbol. Changed SymbolEditor to use DocumentEditor instead of SyntaxEditor in callbacks. (changeset 1393203)
-
由 pgavlin 提交于
***NO_CI*** (changeset 1393197)
-
由 TomasMatousek 提交于
Currently we include a method ordinal to the name of a synthesized member produced during lowering of the method. When a method is added during EnC in the middle of existing members the ordinal is not enough to avoid name conflicts with the previously emitted synthesized members. In order to guarantee uniqueness of the names we now include generation ordinal in synthesized names as well, wherever we use method ordinal. Generation ordinal 0 (regular build) is omitted - the additional number is only added to names of synthesized members created during EnC compilation. An alternative would be to find the highest existing ordinal and start indexing EnC members from there. Such approach would probably work but including the generation number is much simpler and imposes less constraints on the EnC compilation. In addition to including the generic ordinal this changeset also fixes a couple of bugs that were previously masked or we haven't had coverage of the scenarios: - the EnC changeset calculation was not properly handling additions of synthesized members into existing synthesized classes. - SymbolMatcher didn't map local variable types forward correctly for variables of synthesized types. - SymbolMatcher didn't handle generic static lambda display classes with generic. Currently we create generic parameters for these classes via alpha renaming of the type parameters of the top-level generic method. VB is constructing fresh generic parameters, which seems a better approach. I'll leave changing this to a follow-up changeset. As a byproduct of this change we can now enable editing of methods containing dynamic operations. It just works now! Each update of such method creates a new set of dynamic sites. We don't attempt to reuse existing sites. It's little bit wasteful but it also avoids the need of invalidating the call-site caches. (changeset 1393184)
-
由 TomasMatousek 提交于
Removes dependency on MDBG from PdbUtilities and cleans up SymUnmanagedReaderExtensions and CustomDebugInfoReader. (changeset 1393106)
-
由 mattwar 提交于
Undos previous fix that changed the compiler to always emitted a generated property name of __result for EndInvoke. The new change only adds the underscores if there is a name conflict. In this way, we stay metadata compatible with the prior native compiler. Also added same fix to generated parameters for BeginInvoke, callback and object. Added test cases. (changeset 1393061)
-
由 TomasMatousek 提交于
-
由 RoslynTeam 提交于
Move Compilation.WithAnalyzers out of Compilation and make it an extension method. (changeset 1392997)
-
由 manishv 提交于
AnalyzerDriver is currently tightly coupled with the sequence and kind of CompilationEvents being produced by the compilation. It requires that the first event on the queue is a compilation started event and the final event is the compilation end event. If either of these events are not produced OR are out of expected order then the driver can deadlock. This change cleans this up by: 1) Ignoring the CompilationStartedEvent in the analyzer driver: This event was only triggering initialization of some lazy fields on the driver: compilation, analysis scope, declaration analyzers and event processing task. This code has been refactored into an Initialize method which is triggered in AnalyzerDriver.Create immediately after a new compilation is created with driver's event queue. 2) Clean up ProcessCompilationCompletedAsync: Move the await of syntax tree analyzer tasks and DiagnosticQueue.Complete invocation out of this method into the primary driver task. This method now just invokes all the compilation end actions and doesn't do any post processing. I have also cleaned up the analyzer test framework a bit. (changeset 1392961)
-
由 AlekseyTs 提交于
***NO_CI*** (changeset 1392938)
-
由 manishv 提交于
1) Type argument for "TLanguageKindEnum" type param to language specific register methods (RegisterSyntaxNodeAction, RegisterCodeBlockStartAction and RegisterCodeBlockStartAction) must be VB/C# SyntaxKind enum type. 2) Provide LocalizableString arguments for title and description parameters of DiagnosticDescriptor constructor. The rule is disabled by default, but enabled for all our analyzer projects. (changeset 1392911)
-
由 AlekseyTs 提交于
***NO_CI*** (changeset 1392909)
-
由 srivatsn 提交于
These projects (henceforth referred to as CodeAnalysis analyzers) are set of analyzers for the Roslyn APIs. As a start, I'm moving the few metaanalyzers that Manish wrote to this project. We will ship these analyzers with the roslyn nuget packages. So any rules we want to impose on consumers of Roslyn should go here. (changeset 1392712)
-
由 AlekseyTs 提交于
***NO_CI*** (changeset 1392700)
-
由 AlekseyTs 提交于
- Detect numeric overflow for the conversion to the target underlying type during conversion classification. - Perform constant folding for the conversion to the target underlying type during lowering ***NO_CI*** (changeset 1392661)
-
由 AlekseyTs 提交于
Make tests passing on a non-English OS, even in presence of corresponding localized resources. In the process several product issues were fixed like: - Localized exception messages incorporated into diagnostics by command line compiler are not obeying /preferreduilang switch. - Some strings are loaded from resources at the time when diagnostic object is created. Resources are loaded earlier than they could be. When error message is requested, it might not be localized in accordance with the requested culture. - When target culture is not provided, DiagnosticInfo objects used as arguments within another diagnostic object are formatted using InvariantCulture, whereas all other arguments use current culture (as expected). Portions of the message are localized to different languages. (changeset 1392630)
-
由 manishv 提交于
-
由 TomasMatousek 提交于
ImmutableArrayExtensions should be internal - we shouldn't be exposing public extension methods on collection types. (changeset 1392421)
-
由 TomasMatousek 提交于
-
由 TomasMatousek 提交于
Encapsulate heaps and operations on them in a MetadataHeapsBuilder. Previously pieces of related functionality were scattered all over. Improvements in visualizer: for each blob on #Blobs heap display its kind (TypeSpec, MethodSignature, etc.). Calculate and display aggregate blob sizes per kind. (changeset 1392195)
-
由 shyamn 提交于
Adding a TestExtensionManager class in the VisualStudioTestSetup project that will cause any crashes encountered in the light bulb when running VS integration tests to crash VS within an exception filter as opposed to later once the exception has already been caught. I am adding this to get more actionable dumps to debug the issue reported in Bug 1098600... (changeset 1391946)
-
由 jasonmalinowski 提交于
The problem was an errant cast assumed the metadata would be a string[]. The clean fix is to use the appropriate extension method to deal with the single/multiple case that we get from the MEF library. (changeset 1391813)
-
由 Basoundr_ms 提交于
-