- 20 6月, 2014 1 次提交
-
-
由 jasonmalinowski 提交于
-
- 06 6月, 2014 4 次提交
-
-
由 heejaechang 提交于
removed assert since there is a chance where entry in the typemap might not be there yet in concurrent case it is due to us using two concurrent maps, so it is possible for us to put one information in one map but not in the other one yet. when we actually consume this binding object, we will never consume Record ang GetType/GetReader at the same time, so removing the assert should be safe. (changeset 1271843)
-
由 manishv 提交于
Add light bulb support for adding global and local SuppressMessageAttributes for warning and info diagnostics. Global SuppressMessageAttributes are assembly attributes generated in a separated GlobalSuppressions file. Local SuppressMessageAttributes are generated on the member declaration node containing the diagnostic location. (changeset 1271826)
-
由 ChuckStoner 提交于
For unrecognized locals, LocalDefinition.Type was incorrectly set to the type from the previous generation. Rather than attempting to map the type of an unrecognized local to the current generation, we simply copy the byte signature from the IL in the previous generation when emitting. (changeset 1271466)
-
由 TomasMatousek 提交于
Converts non-portable Compilation.Emits that accepts file paths to extension methods and removes SyntaxFactory.ParseFile. Cleans up Emit methods on CSharpCompilation and VisualBasicCompilation. Reorders parameters of Emit methods so that cancellation token is the last one to follow a common convention. (changeset 1271389)
-
- 05 6月, 2014 2 次提交
-
-
由 TomasMatousek 提交于
The compiler used to use the metadata reference path to filter out duplicated references. Duplicate references were also filtered out based on assembly identity, if it the identity was strong. This change removes the former mechanism in favor of the latter modified to work for weak-named identities as well. As a result the compiler will no longer report CS1704/BC32208 in cases where two metadata references passed to the compilation that have different paths but the same weak name and version. Based on SQM data these errors were rarely reported anyways. In addition it is hard to make the compilers report these errors when building from VS. So the value of these errors is minimal. The goal of de-duplication is mainly to support #r scenarios, where application of #r on the "same" reference should be idempotent. The definition of "same" is not based on file paths any more but on simple name and version (or strong name if the assembly is signed). Also removes FilePath from Location. The value was not well defined and thus problematic for metadata locations. (changeset 1270403)
-
由 Basoundr_ms 提交于
The suppress operation, when the 'Ignore spaces in declaration statement' is enabled, was passed wrong option (changeset 1270221)
-
- 04 6月, 2014 6 次提交
-
-
由 tmeschter 提交于
Statically link in the C runtime to rcsc2 and rvbc2. This way you don't need to worry about whether or not it's going to be found at run time. (changeset 1270107)
-
由 heejaechang 提交于
tweaked some of recordingobjectbinder implementation. (changeset 1270066)
-
由 vladres 提交于
Fix bug 529880: fix incorrect parsing (leading to a crash) of FULLWIDTH COLON (U+FF1A) when it appears immediately after an XML name in VB. Now it is always parsed as a statement separator in this context (if possible), that agrees with the native VB compiler. Also adds some tests for the REM keyword in XML name context. (changeset 1269793)
-
由 heejaechang 提交于
I did some experiment and it looks like using concurrent dictionary makes write about 100% faster and read about 50% faster in heavily concurrent sencario. since RecordingObjectBinder is used for syntax node serialization and deserialization which can be quite heavily concurrent, this should help us to get those tree from tree storage faster. (changeset 1269787)
-
由 Basoundr_ms 提交于
Simplification to Predefined Type keyword within Member Access Expression was missing a Symbol check in addition to the Type Check. Fixed in both VB and C# (changeset 1269571)
-
由 Basoundr_ms 提交于
956667 : Simplification to Predefined Type keyword within Member Access Expression was missing a Symbol check in addition to the Type Check. Fixed in both VB and C# 953535 : Introduced a new formatting rule to handle spacing within the Conditional Expression (changeset 1269369)
-
- 03 6月, 2014 1 次提交
-
-
由 AlekseyTs 提交于
Support for initialization scope and constructor initializer scope in SemanticModel. (changeset 1268942)
-
- 31 5月, 2014 6 次提交
-
-
由 tmeschter 提交于
When collecting SQM data, the compilers try to include the set of diagnostic codes that the user has supplied options for. For example, warnings that have been suppressed, warnings that should be treated as errors, etc. We only intend to collect data for compiler diagnostics, and the code assumes that all diagnostic IDs take the form "CS1009" or "BC1009". Now that we support rule set files for third-party diagnostics this assumption is no longer correct. If we're collecting SQM data and a rule set includes a setting for a diagnostic with the ID "MyDiagnostic" (for example), we'll try to parse "Diagnostic" as a uint and crash the compiler. The fix is to filter out everything that doesn't match the expected format. (changeset 1267569)
-
由 BalajiKris 提交于
Example: Namespace N1 Class C End Class $$ End Namespace Typing at $$ makes the syntax tree incomplete and the token at $$ gets attached to the EndBlock. However, the IDE needs to think of this as being attached to the surrounding namespace declaration to be able to recommend keywords that apply here. This change handles such error cases to provide better keyword recommendation. More examples: Namespace N1 End Namespace $$ Module M1 End Module $$ End Class $$ Namespace N1 End Class $$ End Namespace and so on. Added tests for all such cases. (changeset 1267530)
-
由 ChuckStoner 提交于
-
由 AlekseyTs 提交于
-
由 manishv 提交于
Add support for a custom PreviewOperation CodeActionOperation: This enables clients to display custom WPF controls in the preview dialog. This preview control might have custom description, hyperlinks and other custom controls appropriate for the code action preview. (changeset 1267319)
-
由 TomasMatousek 提交于
The current implementation of MultiByteEncoding is not portable. This change replaces it with a simpler string serialization technique. The problem is with GetBytes(char*, int, byte*, int) -- we needed to override this method in order to avoid buffer allocation. But the base method is currently not exposed in portable profile. We don't actually need to define an ecnoding to serialize strings. We can serialize strings to byte array manually and then write the bytes direaction to the strream. Taking it one step furtehr we can also avoid using a custom string serialization format as well. Instead we chack if the string being serialized is UTF8-encodable. We already have a helper in MetadataHelpers that answers that question. If it is we use UTF8 encoding, otherwise we use UTF16 encoding. Invalid Unicode characters are rare so we don't need to optimize the latter. (changeset 1267243)
-
- 29 5月, 2014 12 次提交
-
-
由 ChuckStoner 提交于
-
由 Basoundr_ms 提交于
Introduce option to prefer Intrinsic Predefined Type keyword instead of Expanded Syntax in Member Access Expression. The default value is True. Option set to True: class Program { static void M() { var local = int.MaxValue; } } Option set to False: class Program { static void M() { var local = System.Int32.MaxValue; } } (changeset 1265497)
-
由 TomasMatousek 提交于
The value of LanguageVersion.Experimental should be higher than any possible future language version. Note that changing an enum name or value is a breaking change. When we ship C# 7 we can't change Experimental from 7 to 8. (changeset 1265449)
-
由 ADGreen 提交于
Renamed VB's CaseElse-, CaseValue-, CaseRelational-, and CaseRangeClause nodes/kinds to match .NET conventions for derived types - <Specialization>BaseName instead of their current BaseFirstWord<Specialization>BaseLastWord pattern. (changeset 1264911)
-
由 ChuckStoner 提交于
-
由 BalajiKris 提交于
-
由 tmeschter 提交于
When collecting SQM data, the compilers try to include the set of diagnostic codes that the user has supplied options for. For example, warnings that have been suppressed, warnings that should be treated as errors, etc. We only intend to collect data for compiler diagnostics, and the code assumes that all diagnostic IDs take the form "CS1009" or "BC1009". Now that we support rule set files for third-party diagnostics this assumption is no longer correct. If we're collecting SQM data and a rule set includes a setting for a diagnostic with the ID "MyDiagnostic" (for example), we'll try to parse "Diagnostic" as a uint and crash the compiler. The fix is to filter out everything that doesn't match the expected format. (changeset 1264355)
-
由 heejaechang 提交于
-
由 heejaechang 提交于
this is to verify new tests, once it runs reliablely it will be removed from rolling perf and moved to daily perf machine. (changeset 1263718)
-
由 ChuckStoner 提交于
StackOverflowException in DataFlowPass.IsEmptyStructType for Structure S(Of T) with field of S(Of T)? CheckStructureCircularity was not returning True in all cycle cases. (Compare with C# HasStructCircularity.) (changeset 1265250)
-
由 Pharring 提交于
We just needed to override a few defaults on the MultiByteEncoding type. Also, while testing this, I noticed that one of the tests that was supposed to be testing a long string was incorrect. (changeset 1263598)
-
由 angocke 提交于
An expression-bodied property is a property with an expression instead of accessors, i.e. syntax st. a property P written as ... type P { get { return e; } } is equivalent to ... type P => e; This feature is experimental and keyed on the Experimental LanguageVersion. (changeset 1263330)
-
- 24 5月, 2014 3 次提交
-
-
由 heejaechang 提交于
-
由 BalajiKris 提交于
Harden Parameter Modifier keywords (ByVal, ByRef, Optional, ParamArray) and Event Handling keywords (AddHandler, RemoveHandler, RaiseEvent) by not suggesting anything but ByVal within property or event Accessor declarations (changeset 1262475)
-
由 shyamn 提交于
Ensure that we report warning when the argument for #pragma warning disable / restore is an empty string / string that only contains whitespace. Also throw exception if someone tries to construct a DiagnosticDescriptor with null / empty string as Id. (changeset 1262338)
-
- 23 5月, 2014 5 次提交
-
-
由 tmeschter 提交于
The compilers cannot currently resolve the same range of <Include> elements as FxCop. Consider the following: <Include Path="MinimumRecommendedRules.ruleset" Action="Default" /> FxCop knows to go look for MinimumRecommendedRules.ruleset among the rule sets installed with VS, as well as in any user-defined locations. Roslyn lacks this ability, and so some projects that previously built will now fail with an error about the file not being found. For the moment, just work around the issue by ignoring any included files that can't be found. (changeset 1261868)
-
由 shyamn 提交于
Disallow ComAliasNameAttribute from getting emitted on parameters in cases where user invokes implement interface refactoring to implement a COM interface. (changeset 1261481)
-
由 kayleh 提交于
-
由 AlekseyTs 提交于
- Disallow field modifiers and field attributes on primary constructor parameters. - Adjust scope of primary constructor parameters. - Allow referencing non-ref/non-out primary constructor parameters in a lambda. - Report appropriate diagnostics when a primary parameter is shadowed in a nested scope. (changeset 1261399)
-
由 wochae 提交于
The sequence point used to be on the "using" keyword while the break point spans around both "using" keyword and the expression. Here, we adjust sequence points to be aligned with break points. Also, we update unittests in a way that the markup can be used to identify a specific span which is verified. (changeset 1261135)
-