1. 05 6月, 2015 5 次提交
    • M
      Merge pull request #3250 from mavasani/InlineTempBug · b770795f
      Manish Vasani 提交于
      Gracefully bail out on extension method rewrite within conditional access expressions
      
      Fixes #2593
      
      User scenario: User types a conditional access expression with a subsequent extension method invocation. For example, "a?.Method().ExtensionMethod()". Attempting to perform any simplification (cast simplification, simplify name) or refactorings (inline temporary) causes a exceptions in the simplification engine and all these IDE services are disabled for the project.
      
      Issue description: We are not handling conditional access expressions, and hence member access or invocations with null "left of dot" nodes, in our expander. Additionally, performing extension method expansion (to a static method invocation with receiver replaced as the first argument to invocation) is non-trivial.
      
      Fix description: This change makes a defensive fix by:
      1. Guarding against null reference exceptions.
      2. Bailing out on extension method rewrite within conditional access expressions.
      
      Approved 6/4 by ML Shiproom.
      b770795f
    • A
      Merge pull request #3297 from AlekseyTs/Bug1169511 · 6bdb9d68
      AlekseyTs 提交于
      Include ContentType into assembly qualified type name emitted for an attribute argument.
      6bdb9d68
    • T
      Merge pull request #3296 from tmat/MidStatement · f40efcf0
      Tomáš Matoušek 提交于
      Report rude edit when a partially executed active statement is edited
      f40efcf0
    • C
      Merge pull request #3282 from cston/2639 · b643b085
      Charles Stoner 提交于
      Include accessible private members from outer types in Intellisense [stabilization branch]
      
      Port f9bd1d1f to stabilization branch
      b643b085
    • T
  2. 04 6月, 2015 15 次提交
  3. 03 6月, 2015 15 次提交
    • C
      Avoid re-calculating base types · 1dd5d8c1
      Charles Stoner 提交于
      Conflicts:
      	src/EditorFeatures/VisualBasicTest/Completion/CompletionProviders/SymbolCompletionProviderTests.vb
      1dd5d8c1
    • C
      Restore original fix for #2639 · 4e74318b
      Charles Stoner 提交于
      4e74318b
    • D
      Merge pull request #3273 from dpoeschl/FixCIBuilds · 1540509e
      David Poeschl 提交于
      Update stabilization cibuild scripts
      1540509e
    • D
      Update stabilization cibuild scripts · 263210d9
      David Poeschl 提交于
      The cibuild scripts had diverged between stabilization and master. This
      change brings stabilization back in sync with master and makes a small
      change to ensure passing invalid commandline arguments returns a proper
      error code.
      263210d9
    • J
      Deal with solutions with circular project references in MSBuildWorkspace · 4c727592
      Jason Malinowski 提交于
      If we have a solution with circular references, leave one as a metadata
      reference to prevent deadlocks when trying to get compilations.
      4c727592
    • M
      Fix ITypeSymbolExtensions.IsOrDerivedFromExceptionType to handle type... · 3701a7f7
      Manish Vasani 提交于
      Fix ITypeSymbolExtensions.IsOrDerivedFromExceptionType to handle type parameters constrained on Exception type or its subtype
      
      Fixes https://github.com/dotnet/roslyn/issues/3254
      
      User scenario: User writes code where they have explicit casts to a type parameter deriving from Exception type or its subtype. We will offer incorrect cast removal fixes to remove these explicit casts. Removing such casts will cause their code to not compile. Even worse, if they apply a FixAll occurrences code fix, then all such casts across their (document/project/solution) will be removed, causing tons of compile errors.
      
      Fix description: IsOrDerivedFromExceptionType was only checking for base types of the given type symbol to detect if the type is an Exception type. We also need to handle type parameters which are constrained by Exception or its subtypes.
      
      Testing: Added regression tests + existing tests.
      3701a7f7
    • T
      Add unit tests around rule set modification · fa6e63a6
      Tom Meschter 提交于
      Add unit tests to cover modifying rule set documents.
      fa6e63a6
    • T
      Extract code to modify rule sets · 68cfbed6
      Tom Meschter 提交于
      Extract the code to modify rule sets to a helper type.
      68cfbed6
    • A
      Do not cut short binding of “return” statement even if expression has syntax errors. · b2f9d029
      AlekseyTs 提交于
      Addresses DevDiv 1179899.
      b2f9d029
    • D
      Merge pull request #3227 from dpoeschl/PortXamlNavigationEtc · a7ddf2c7
      David Poeschl 提交于
      Pass correct itemIDs to IVsSymbolicNavigationNotify
      a7ddf2c7
    • T
      Be careful removing items from rule sets · e0c54290
      Tom Meschter 提交于
      Fixes #3098.
      
      It is possible to have multiple `<Rule>` elements with the same ID in a
      rule set file, so long as they specify the same Action. This is likely
      to happen with former FxCop rules--you'll end up with one copy under the
      "Microsoft.Analyzers.ManagedCodeAnalysis" analyzer (from FxCop) and one
      under "Microsoft.AnalyzerPowerPack.CSharp" (from a Roslyn-based
      analyzer).
      
      When the user selects one of these rules in Solution Explorer and sets
      the severity to "Default" we need to find each rule with the matching
      ID, and remove them all from the rule set file. However, we remove the
      rules while we're in the middle of the enumeration, tripping up the
      enumerator and leading to `NullReferenceException`s.
      
      The fix is to first flatten the enumeration of items to be removed to a
      list, and then remove them.
      e0c54290
    • A
      Merge pull request #3236 from amcasey/GH3231 · d1fc6e65
      Andrew Casey 提交于
      Loosen check in CapturedVariableRewriter.RewriteParameter
      d1fc6e65
    • M
      Gracefully bail out on extension method rewrite within conditional access expression · 11708cf9
      Manish Vasani 提交于
      Fixes #2593
      
      User scenario: User types a conditional access expression with a subsequent extension method invocation. For example, "a?.Method().ExtensionMethod()". Attempting to perform any simplification (cast simplification, simplify name) or refactorings (inline temporary) causes a exceptions in the simplification engine and all these IDE services are disabled for the project.
      
      Issue description: We are not handling conditional access expressions, and hence member access or invocations with null "left of dot" nodes, in our expander. Additionally, performing extension method expansion (to a static method invocation with receiver replaced as the first argument to invocation) is non-trivial.
      
      Fix description: This change makes a defensive fix by:
      
      1. Guarding against null reference exceptions
      2. Bailing out on extension method rewrite within conditional access expressions.
      
      Long term fix would be to implement this feature in expand/reduce engine, but this should happen post 1.0 milestone. A separate issue will be opened to track this work.
      
      Testing: Added regression tests + existing tests.
      11708cf9
    • A
      Loosen check in CapturedVariableRewriter.RewriteParameter · cbc056c9
      Andrew Casey 提交于
      When we added support for transparent identifiers, we loosened the
      existing check so that they wouldn't be flagged as erroneous.  We should
      have gone further and indicated that all anonymous types (i.e. including
      user-declared ones) are okay.
      
      Because of the way its check is structured, VB is unaffected.
      
      Fixes #3231
      cbc056c9
    • A
      Catch exceptions when creating a stream for signing · d6a8f32b
      Andy Gocke 提交于
      This change is meant to address crashes like the ones in bug 1140649. The
      crashes seem to happen due to exceptions thrown while getting a temporary
      output stream to write the PE file to. I have been unable to reproduce
      the conditions for the crash themselves -- they only seem to happen on
      a Japanese language Windows with a Japanese language copy of Visual Studio.
      This fix addresses their symptom by wrapping the CreateInputStream call
      during signing with a try/catch and then surfacing the exception as a
      diagnostic for signing failure.
      
      We cannot currently add any more localized resources to stabilization, so
      this fix is meant to be as targeted as possible and can only deliver
      information through existing resource strings.
      
      (cherry picked from commit 801a10a5)
      d6a8f32b
  4. 02 6月, 2015 5 次提交