1. 05 12月, 2019 1 次提交
  2. 13 11月, 2019 1 次提交
    • J
      Implement lambda discard parameters (#38786) · 4dea4416
      Julien Couvreur 提交于
      * Implement lambda discard parameters
      
      * Remove duplicate tests
      
      * Factor logic to recognize underscore tokens
      
      * Align symbol display with other discards
      
      * Distinguish discards in QuickInfo
      
      * Add IsDiscard property instead of IDiscardSymbol
      
      * Adjust IDE logic to use IsDiscard
      
      * Avoid large tuple return
      
      * Add test for ref/out discard parameters
      
      * Address PR feedback and test plan ideas
      
      * Allow in expression trees
      
      * Support general discard parameters
      
      * Add IDE tests
      
      * Emit with unspeakable name
      
      * Remove unused error code
      
      * Only support lambdas
      
      * Fix tests
      
      * Address some PR feedback
      
      * Address remaining feedback
      
      * Address more feedback
      
      * Fix conflict
      
      * Update PublicAPI.Unshipped.txt
      
      * Update PublicAPI.Unshipped.txt
      
      * Add ChangeSignature tests
      
      * Add SymbolCompletion tests
      
      * Add InlineRename test
      
      * Typo
      4dea4416
  3. 02 11月, 2019 1 次提交
  4. 03 10月, 2019 1 次提交
  5. 26 9月, 2019 1 次提交
  6. 25 8月, 2019 1 次提交
  7. 15 8月, 2019 1 次提交
    • N
      Reduce memory consumption for string concatenation from O(n^2) to O(n) (#37915) · 99cc3811
      Neal Gafter 提交于
      Fixes #7398
      Fixes #37572
      Relates to https://github.com/aspnet/Razor/issues/614 and many other customer accommodations that are no longer needed.
      
      History of this bug:  When constant folding a long sequence of string concatenations, there is an intermediate constant value for every left-hand operand.  So the total memory consumed to compute the whole concatenation was *O(n^2)*.  The compiler would simply perform this work and eventually run out of memory, simply crashing with no useful diagnostic.  Later, the concatenation implementation was instrumented so it would detect when it was likely to run out of memory soon, and would instead report a diagnostic at the last step. See https://github.com/dotnet/roslyn/commit/f177077665a5bef862014f1898b961d1759c9248.  Test `Bug529600()` was added to demonstrate that we produced a diagnostic.  However, the compiler still consumed *O(n^2)* memory for the concatenation and this test used to consume so much memory that it would cause other tests running in parallel to fail because they might not have enough memory to succeed.  So the test was disabled and eventually removed.  The compiler would still crash with programs containing large string concatenations, or consume huge amounts of memory and take a long time before reporting a diagnostic, so the underlying problem had not been addressed.
      
      Here we have revised the implementation of constant folding string concatenations so that it requires *O(n)* memory and remove the old instrumentation.  As a consequence the test `Bug529600()` now runs very quickly and does not consume gobs of memory.
      99cc3811
  8. 07 8月, 2019 1 次提交
  9. 16 7月, 2019 2 次提交
  10. 12 7月, 2019 1 次提交
  11. 19 6月, 2019 1 次提交
  12. 12 6月, 2019 1 次提交
  13. 01 5月, 2019 1 次提交
  14. 27 4月, 2019 1 次提交
    • N
      Use of unannotated unconstrained type parameter in nullable diabled code (#34889) · 03f6b0c1
      Neal Gafter 提交于
      A reference to an unconstrained type parameter in nullable-disabled code should be treated as *oblivious*, and therefore reading them should be considered to produce non-null values, and we are permitted to assign null values to them without a diagnostic.
      Fixes #34842
      
      Also disable the old WRN_DotOnDefault when the nullable feature is enabled.
      Fixes #34855
      03f6b0c1
  15. 30 3月, 2019 1 次提交
    • N
      Implement pattern-matching in the nullable walker (#34273) · 583505c5
      Neal Gafter 提交于
      * Implement pattern-matching in the nullable walker
      
      Fixes #29909
      Fixes #31881
      Fixes #30952
      Fixes #33499
      Fixes #30597
      Fixes #32414
      Fixes #23944
      
      * Remove infinite recursion by using an empty struct cache.
      
      * Changes per code review comments.
      
      * Remove debugging code accidentally left behind.
      
      * Analysis of patterns-matching in the nullable walker requires valid (>0) slots.
      
      * Skip a flaky test
      
      * Patch after merge.
      
      * Make ctor private to force use of factory methods
      
      * Correct a typo.
      
      * Fixup after merge.
      583505c5
  16. 19 3月, 2019 1 次提交
  17. 15 3月, 2019 1 次提交
  18. 14 3月, 2019 1 次提交
  19. 13 3月, 2019 1 次提交
  20. 12 3月, 2019 1 次提交
  21. 09 3月, 2019 2 次提交
  22. 07 3月, 2019 1 次提交
  23. 16 2月, 2019 1 次提交
  24. 15 2月, 2019 1 次提交
  25. 01 2月, 2019 1 次提交
  26. 30 1月, 2019 1 次提交
  27. 26 1月, 2019 1 次提交
  28. 04 1月, 2019 1 次提交
  29. 03 1月, 2019 2 次提交
  30. 21 12月, 2018 1 次提交
  31. 20 12月, 2018 1 次提交
  32. 19 12月, 2018 1 次提交
  33. 18 12月, 2018 1 次提交
  34. 11 12月, 2018 1 次提交
  35. 10 12月, 2018 1 次提交
  36. 29 11月, 2018 1 次提交
  37. 20 11月, 2018 1 次提交