- 07 1月, 2015 40 次提交
-
-
由 nmgafter 提交于
The spec for how nameof should work in the face of extension methods is not really worked out, and the implementation is hacky and unlikely to align with an eventual rational specification. So we've decided to make it an error today so we can work out and implement some intentional rational behavior in the future without breaking backward compatibility. Nobody seems to use this particular intersection of features anyway. (changeset 1388917)
-
由 AlekseyTs 提交于
***NO_CI*** (changeset 1388887)
-
由 mattwar 提交于
These are being removed because they lead people to incorrectly building CodeFix providers that precompute the fix before registering the CodeAction's, as opposed to have the CodeAction itself do the work on a deferred basis. (changeset 1388862)
-
由 TomasMatousek 提交于
-
由 TomasMatousek 提交于
Marks CSharpKind and VBKind extension methods as Obsolete and adds equivalent extension methods Kind for both languages. Marks CSharpKind and VBKind instance methods on language specific syntax nodes Obsolete as well. (changeset 1388816)
-
由 acasey 提交于
Change the display name of the roslyn analyzers to "Roslyn Analyzers" to avoid conflicting with the "Roslyn Diagnostics" window. Bonus: move the project into the folder hierarchy. CR: srivatsn; kevinpi (changeset 1388791)
-
由 TomasMatousek 提交于
Allow PE and PDB streams to be arbitrary writable streams. If the specified stream doesn't fulfill implementation specific requirements of the PE/PDB writer use an intermediate in-memory stream and write its content to the user specified one at the end of emit. Fixes #349. (changeset 1388751)
-
由 wochae 提交于
-
由 jasonmalinowski 提交于
Add a better description for people who encounter the diagnostic about prefixed verbatim crefs. (changeset 1388376)
-
由 nmgafter 提交于
We also add all of the relevant optimizations requested for current and future formatting performance improvements. We now use full overload resolution (using a new binder type specialized for synthesizing invocations) to select an appropriate string.Format method or format factory method, which enables it to handle params, generics, arbitrary argument conversions, etc, and we optimize the special case of no fill-ins by processing the {{ and }} escapes, producing a literal in the generated code. (changeset 1388224)
-
由 tmeschter 提交于
Within the compiler layer, we want to access properties like Category, DefaultSeverity, IsEnabledByDefault, etc., off of Diagnostic directly rather than going through Diagnostic.Descriptor. Roslyn diagnostic RS0013 enforces this. However, it fires within Diagnostic itself, even though this is the one place where accessing Descriptor is legitimate. This change adds suppressions to these occurrences, but the diagnostic should be updated to not fire in Diagnostic itself. A bug has been filed to track that work, and updating the Roslyn solutions to use new toolset & diagnostics packages with the fix. (changeset 1388110)
-
由 VSadov 提交于
Index expressions in the index initializers should be evaluated exactly once. In a case of a nested initializer, we were evaluating as many times as we have members in the RHS. That resulted in a number of bugs reported. Working on this fix revealed some more issues with params and named indices not being supported properly. Fixes #449 (changeset 1388102)
-
由 TomasMatousek 提交于
Bug 1022828: Buffer overrun in PdbWriter - off-by-one error, we were writing to the SymWriter's stack beyond a reserved buffer. EnC apply tests can run 32bit. Resource tests were incorrectly converting a pointer to 32bit integer. (changeset 1387932)
-
由 chandera 提交于
Add a test for 981208. The new cache gets collected when you call Workspace.Dispose() and remove references to the workspace and things that hold onto it, so we just need regression test. (changeset 1387925)
-
由 Basoundr_ms 提交于
Call WithDocumentText when fed with the same text sometimes doesn't return the same instance of the Document because TextSource, a WeakReference, sometimes loses the reference and the perf optimization to return the same instance of the Document is not possbile. (changeset 1387876)
-
由 acasey 提交于
We shouldn't crash just because a PDB is missing information for a specific method. It looks like the other callers of GetMethodByVersion handle null appropriately. CR: ChuckS; KevinH (changeset 1387853)
-
由 heejaechang 提交于
-
由 VSadov 提交于
-
由 VSadov 提交于
***NO_CI*** (changeset 1387627)
-
由 Kevin_H 提交于
We weren't handling a number of the different types of state machine fields, and the Kind returned for hoisted, synthesized local fields ("$S" prefix) looked wrong (returned "HoistedLocalField" instead of "HoistedSynthesizedLocalField") (changeset 1387592)
-
由 VSadov 提交于
***NO_CI*** (changeset 1387571)
-
由 jaredpar 提交于
This changes EquatableAnalyzer to use a OfType call instead of Cast. Using Cast here is incorrect and is causing an exception to be thrown in our toolset. Bug 1097052 ***NO_CI*** (changeset 1387470)
-
由 VSadov 提交于
-
由 jaredpar 提交于
The most immediate issue here is cancellation of the CancellationToken passed to AsyncQueue<T> will unconditionally call TaskCompletionSource.SetResult for the main Task value in the queue. This cancellation can happen long after or in parallel with the completion of AsyncQueue<T>. When this happens an exception is thrown. This exception is causing the VBCSCompiler process to crash because it expects cancelling a token to be a safe operation. Longer term there are other issues in AsyncQueue<T> that need to be fixed (several race conditions). Once this is checked in I willmove 1097123 to a Pri 1 and track the remaining fixes with that. (changeset 1387407)
-
由 mattwar 提交于
Changed SymbolEditor to use SyntaxEditor for editting declarations. (changeset 1387404)
-
由 dustincampbell 提交于
-
由 mattwar 提交于
NameSyntaxComparer was causing stack overflow due to infinite recursion. (changeset 1387310)
-
由 pgavlin 提交于
This is consistent with the spec and Dev12. ***NO_CI*** (changeset 1387266)
-
由 VSadov 提交于
***NO_CI*** (changeset 1387232)
-
由 dustincampbell 提交于
* Add 'when' keyword recommender to the completion list * Ensure that the completion appears inside exception filters. * Add 'when' keyword span to keyword highlighting for try..catch statements. * Ensure that parenthesis simplication works catch filter expressions * Add tests for 'when' classification (it already was classified correctly) (changeset 1387214)
-
由 AlexTurnMSFT 提交于
This adds a per-rule Title for all C# and VB compiler warnings that have message strings. These Titles will show up in the ruleset editor. This also includes Descriptions that show up upon expansion for a set of high-hit C# warnings. I added Descriptions for high-hit warnings per MSDN. The work is still pending to add the equivalent VB warning Descriptions. The principle was to basically restate the base Message string without its fill-ins as the Title, swapping in general words such as "method" and "type". Often, just removing the fill-ins and quotes was enough, as the surrounding context already said what the code element was. Sometimes the message needed to be reworded a bit. I also left out any further clauses (such as "Consider ..."), except for shortened versions necessary to disambiguate similar warnings. For now, I'm leaving such clauses in the messages themselves, using Description for longer-form explanations - we can see if we get feedback there. This should be the content work needed to ship the ruleset editor without blank titles. There was one key bug remaining (now filed) where rules kept around solely to make previous /nowarns and #pragmas happy still show up in the ruleset editor. Remaining work: * Descriptions for VB compiler warnings * Titles/Descriptions for C#/VB compiler errors * Categories for VB/C# compiler warnings/errors (changeset 1387213)
-
由 AlekseyTs 提交于
Stop throwing Unreachable exception in CalculateLocalSyntaxOffsetInSynthesizedConstructor, return -1 instead. ***NO_CI*** (changeset 1387208)
-
由 AlekseyTs 提交于
***NO_CI*** (changeset 1387165)
-
由 acasey 提交于
Carefully restructure AsyncRewriter.CreateMethodBinder so that it works for both the compiler and the EE. CR: chucks; ngafter; alekseyt (changeset 1387147)
-
由 dustincampbell 提交于
* Fix up existing IDE support for C# string interpolation to account for the new syntax. The new model makes the implementation much simpler! * Fix formatting of alignment and format specifiers * Unskipped all IDE tests that were previously skipped due to the C# string interpolation changes (changeset 1387125)
-
由 dpoeschl 提交于
Before navigating to a symbol defined in a given document, check whether a related linked or shared document is the active context document and use that document instead. For regular files (non-shared and non-linked) and closed linked files, this is always the provided document. For open linked files and open shared files, the active context is already tracked by the workspace and can be looked up directly. For closed shared files, the document in the shared project's SharedItemContextHierarchy is preferred. (changeset 1387121)
-
由 tmeschter 提交于
Make sure we use the same CodeAnalysisRuleSet across all configurations of a project. (changeset 1387120)
-
由 wochae 提交于
-
由 jaredpar 提交于
Disabling a few suites which are exhibiting flaky behavior in the lab. DevDiv 1095079 tracks re-enabling them. (changeset 1386998)
-
由 VSadov 提交于
***NO_CI*** (changeset 1386846)
-