- 07 5月, 2019 1 次提交
-
-
由 Rikki Gibson 提交于
* Add reproducer for #34872 * Fix bug and add test * WIP * Test similar scenario in VB * Add void check in ClassifyConversionFromType, update tuple tests * Cleanup
-
- 04 5月, 2019 2 次提交
-
-
由 Andy Gocke 提交于
Implements a design change where overrides are allowed to change the type of the member as long as there is an implicit nullable reference conversion from the overriding type to the overridden type according to the nullable variance rules. Fixes #23268 Fixes #30958
-
由 AlekseyTs 提交于
Closes #28834. Closes #30061.
-
- 01 5月, 2019 1 次提交
-
-
由 Neal Gafter 提交于
Fixes #29956 Also introduce a helper `TypeSymbol.IsVoidType()`
-
- 27 3月, 2019 1 次提交
-
-
由 Julien Couvreur 提交于
Track l-values in conditional operator Assignment to ref variable produces safety warnings
-
- 14 3月, 2019 1 次提交
-
-
由 Fredric Silberberg 提交于
-
- 13 3月, 2019 1 次提交
-
-
由 Neal Gafter 提交于
e.g. `ReturnType`, `ElementType`, etc.
-
- 12 3月, 2019 1 次提交
-
-
由 Fredric Silberberg 提交于
-
- 09 3月, 2019 2 次提交
-
-
由 Neal Gafter 提交于
- Rename `TypeSymbolWithAnnotations` to `TypeWithAnnotations` - Rename its type field from `TypeSymbol` to `Type` - Fields of Symbols that are of type `TypeWithAnnotations` that are currently named `Type` would be renamed `TypeWithAnnotations` Fixes #33736
-
由 Neal Gafter 提交于
* Eliminate unspeakable NullableAnnotation values. * Dynamic invocations result in an oblivious state Fixes #33638 * Fix up expected diagnostics Due to #33924 * Rename NullableAnnotation.Unknown to NullableAnnotation.Oblivious
-
- 25 2月, 2019 1 次提交
-
-
由 Neal Gafter 提交于
The NullableWalker is revised so that the inferred state of an expression is either `NotNull` or `MaybeNull` (represented by the new type `NullableFlowState`). There is no longer such as thing as an oblivious rvalue. There are four kinds of lvalues: - oblivious lvalues read as NotNull but null can be written to them - annotated lvalues read as MaybeNull and null can be written to them - unannotated lvalues read as NotNull and null may not be written to them - unconstrained type parameters read as MaybeNull but null may not be written to them In order to preserve the safety in the face of such unconstrained type parameters, we warn immediately when a null value of such a type is introduced. This is a safety warning. The contexts in which such a warning are given are - `default` and `default(T)` - `null` conversion to `T` (when `T` is known to be ref type) - `e?.M()` when the return type is `T` - dynamic conversion or cast to `T` when the dynamic might be null - explicit conversion to `T` - `e as T` when there is not an implicit conversion from the type of `e` to `T` - a call to a method like `FirstOrDefault()` that is annotated with `[MaybeNull] (not yet implemented) We remove the hidden diagnostics previously computed by the NullableWalker. We add debugger display support for a number of types used by the NullableWalker. The display for `NullableWalker` summarizes the computed nullability of variables in a nice compact form. We remove support for definite assignment in the NullableWalker. Some scenarios involving the use of not-definitely-assigned variables may cause cascaded diagnostics. We might remove them in the future by initializing all vaiables to the `NotNull` state when they enter scope. We overhaul and simplify the inplementation of conversions, the null-conditional operator, and result inference for lifted operators. We simplify the Meet and Join operations so that they form a lattice on both the NullableAnnotation and NullableFlowState. Catch variables are now initialized to a non-null state on entry to the catch block. In unreachable code, every expression produces a non-null rvalue. An erroneous expression produces a non-null rvalue (to suppress cascaded diagnostics).
-
- 30 1月, 2019 1 次提交
-
-
由 Julien Couvreur 提交于
-
- 01 1月, 2019 1 次提交
-
-
由 Julien Couvreur 提交于
-
- 19 12月, 2018 1 次提交
-
-
由 Julien Couvreur 提交于
-
- 10 11月, 2018 1 次提交
-
-
由 AlekseyTs 提交于
Remove NonNullTypes context and other unnecessary information stored in TypeSymbolWithAnnotations. (#30913) Remove NonNullTypes context and other unnecessary information stored in TypeSymbolWithAnnotations. Fixes #30845. Explicitly handle nullability analysis for unconstraint type parameters. Related to #29981, #29993
-
- 30 10月, 2018 1 次提交
-
-
由 AlekseyTs 提交于
-
- 17 10月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 07 9月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
Handle tuple conversions and extension method `this` argument conversions in NullableWalker (#29679)
-
- 05 9月, 2018 1 次提交
-
-
由 Julien Couvreur 提交于
-
- 01 9月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 22 8月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 03 8月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 30 6月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 12 6月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 26 5月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 09 3月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 26 1月, 2018 1 次提交
-
-
由 Charles Stoner 提交于
-
- 04 10月, 2017 1 次提交
-
-
由 Andy Gocke 提交于
There is no conversion between ref like types and either object or generic parameters (even if constrained to struct) in either direction. This change enforces that rule and adds tests around pattern matching, which exercises this rule.
-
- 14 9月, 2017 1 次提交
-
-
由 Charles Stoner 提交于
Type inference with nullable reference types
-
- 13 9月, 2017 1 次提交
-
-
由 Charles Stoner 提交于
! operator should suppress warnings on array element types and constructed type arguments
-
- 27 8月, 2017 1 次提交
-
-
由 Charles Stoner 提交于
-
- 16 8月, 2017 1 次提交
-
-
由 Omar Tawfik 提交于
* Stack alloc parsed to spans * PR feedback * Document the breaking change
-
- 17 6月, 2017 1 次提交
-
-
由 Tomas Matousek 提交于
-
- 24 5月, 2017 1 次提交
-
-
由 Alireza Habibi 提交于
Merging on behalf of @alrz.
-
- 19 5月, 2017 1 次提交
-
-
由 Charles Stoner 提交于
-
- 13 4月, 2017 1 次提交
-
-
由 Charles Stoner 提交于
-
- 05 4月, 2017 1 次提交
-
-
由 Julien Couvreur 提交于
-
- 29 3月, 2017 1 次提交
-
-
由 Charles Stoner 提交于
-
- 11 3月, 2017 2 次提交
-
-
由 Julien Couvreur 提交于
Conflicts: src/Compilers/CSharp/Portable/Binder/Binder_Conversions.cs src/Compilers/CSharp/Portable/Binder/Semantics/Conversions/ConversionKind.cs src/Compilers/CSharp/Portable/Binder/Semantics/Conversions/ConversionKindExtensions.cs src/Compilers/CSharp/Portable/CodeGen/EmitExpression.cs
-
由 Julien Couvreur 提交于
Conflicts: src/Compilers/CSharp/Portable/Binder/Binder_Expressions.cs src/Compilers/CSharp/Portable/Binder/Binder_Query.cs src/Compilers/CSharp/Portable/Compiler/MethodCompiler.cs src/Compilers/CSharp/Portable/Errors/ErrorCode.cs
-