Skip to content
Permalink
Branch: master
Commits on Jul 15, 2019
  1. Target-typed switch expression (#37052)

    gafter committed Jul 15, 2019
    Implements dotnet/csharplang#2389
    Fixes #35958
    
    Note that the switch expression conversion is not a standard implicit conversion.  Specifically, it should not be considered as a valid implicit conversion as input to a user-defined conversion, as that could permit two chained user-defined conversions.
    
    Also changes binding of switch expression to ECMA so it can interact properly with switch expressions.
    Fixes #14965
  2. Remove the temporary mechanism for "external" nullable annotations. (#…

    gafter committed Jul 15, 2019
    …34916)
    
    Relates to #29821
    Fixes #34409
Commits on Jul 9, 2019
  1. Ensure we have stack spilling support for the recently-added expressi…

    gafter committed Jul 9, 2019
    …on node `BoundReadOnlySpanFromArray` (#37057)
    
    Fixes #36856
Commits on Jul 4, 2019
  1. Use pattern-matching in MetadataWriter for readability and possibly p…

    gafter committed Jul 4, 2019
    …erformance. (#36219)
Commits on Jul 1, 2019
  1. Make IRecursivePatternOperation public (#36709)

    gafter committed Jul 1, 2019
    Fixes #35843
Commits on Jun 28, 2019
  1. Don't treat zero-length deconstruction as an error when binding patte…

    gafter committed Jun 28, 2019
    …rns. (#36678)
    
    Fixes #36496
Commits on Jun 12, 2019
  1. Update some LDM champs from 7.3 (#36186)

    gafter committed Jun 12, 2019
Commits on May 22, 2019
  1. Unskip passing tests. (#35856)

    gafter committed May 22, 2019
    Fixes #35611
Commits on May 21, 2019
  1. When building a decision dag, recognize special CLR behavior of array…

    gafter committed May 21, 2019
    …s. (#35772)
    
    Fixes #35661
  2. Elide an emit optimization that produces bad code near a stackalloc. (#…

    gafter committed May 21, 2019
    …35780)
    
    * Also fix the type of a bound node (argument to a ctor) so it agrees with the corresponding parameter.
    Fixes #35764
    * Handle nested stackalloc initializers in the spiller and add a test that it works.
Commits on May 16, 2019
  1. Unskip working test (#35703)

    gafter committed May 16, 2019
    Fixes #25997
Commits on May 13, 2019
  1. Adjust tests per code review.

    gafter committed May 13, 2019
Commits on May 11, 2019
  1. Fix bug where pattern-matching treats a type parameter as if it is a …

    gafter committed May 11, 2019
    …reference (which it might not be)
    
    Fixes #35584
Commits on May 7, 2019
  1. Fix lambda lowering for cast to generic ReadOnlySpan<T> (#35463)

    gafter committed May 7, 2019
    Fixes #31685
Commits on May 2, 2019
  1. Update language feature status (#35418)

    gafter committed May 2, 2019
Commits on May 1, 2019
  1. merge features/nested-stackalloc (#35385)

    gafter committed May 1, 2019
    * Permit stackalloc in nested contexts. (#28969)
    Fixes #26759
Commits on Apr 30, 2019
  1. Correct nullability analysis in conditional access (#34973)

    gafter committed Apr 30, 2019
    Fixes #29956
    
    Also introduce a helper `TypeSymbol.IsVoidType()`
  2. Handle val escape for the switch expression. (#35311)

    gafter committed Apr 30, 2019
    Fixes #35278
Commits on Apr 29, 2019
  1. Null inferences do not flow out of a finally block. (#35276)

    gafter committed Apr 29, 2019
    Fixes #34018
  2. Lambdas in array initializers checked in nullable walker (#35030)

    gafter committed Apr 29, 2019
    Also fixes a corresponding issue in the switch expression
    Fixes #34299
    See also #35029
  3. Fixup from bad merge. (#35351)

    gafter committed Apr 29, 2019
  4. Clean up an assertion in LambdaRewriter. (#35284)

    gafter committed Apr 29, 2019
    Fixes #30069
  5. Handle dynamic null checks against literal null (#34996)

    gafter committed Apr 29, 2019
    Fixes #30939
Commits on Apr 26, 2019
  1. Error for `typeof(T?)` when `T` is a reference type (#35001)

    gafter committed Apr 26, 2019
    Fixes #29894
  2. Use of unannotated unconstrained type parameter in nullable diabled c…

    gafter committed Apr 26, 2019
    …ode (#34889)
    
    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
Commits on Apr 25, 2019
  1. Remove the dependence between the order in NullableAnnotation and met…

    gafter authored and RikkiGibson committed Apr 15, 2019
    …adata attribute values (#34909)
    
    Fixes #33952
Commits on Apr 15, 2019
  1. Remove the dependence between the order in NullableAnnotation and met…

    gafter committed Apr 15, 2019
    …adata attribute values (#34909)
    
    Fixes #33952
Commits on Apr 11, 2019
  1. Re-infer nullable result of switch expression (#34686)

    gafter committed Apr 11, 2019
    Fixes #34233
Commits on Apr 10, 2019
  1. Document compat break between 16.0 and 16.1 from #34695 (#34904)

    gafter committed Apr 10, 2019
    Fixes #34882
  2. Report unboxing conversion of a possibly null value. (#34781)

    gafter committed Apr 10, 2019
    Fixes #33359
Commits on Apr 7, 2019
  1. Simplify the representation of `NullableWalker.LocalState` to a `BitV…

    gafter committed Apr 7, 2019
    …ector` (#34769)
    
    Fixes #34766
    
    Previously, every instance of `LocalState` required allocation.  Now we use `BitVector`, which stores state information inline in the bits of a primitive.
    
    With the previous implementation of `BitVector` (32 bits inline), only about 1.3% of our nullable tests require allocating any memory at all for nullable states.
    
    However, I've updated `BitVector` to have 64 bits inline, and now only three of our tests require allocating memory for states.  Those three tests heavily exercise tuple conversions.
  2. Infer nullability in switch on conditional access operator (#34687)

    gafter committed Apr 7, 2019
    Adds a test for an already-fixed issue
    Fixes #34246
Commits on Apr 6, 2019
  1. `t is null` with LangVersion 7 should produce a diagnostic (#34695)

    gafter committed Apr 6, 2019
    Fixes #34678
Commits on Apr 5, 2019
  1. Use object== for original types rather than .Equals. (#34705)

    gafter committed Apr 5, 2019
Older
You can’t perform that action at this time.