-
Notifications
You must be signed in to change notification settings - Fork 86
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Different reference types: nullable and non-nullable (#1124)
* Port text from #700 The first commit ports in the text from #700 substantially without change. The only editorial change is to move the clause on "Nullable directives" in lexical-structure before the clause on Pragma directives. * fix build warnings This will likely cause new failures, as I turned on nullable annotations and warnings in one of the templates. Update code samples for the template in use to remove nullable warnings. I did this as we plan to have nullable annotations on by default in this version of the spec. * Revert "fix build warnings" This reverts commit dcb3731. * test for nullable annotations If the samples compile cleanly in this mode, I can continue in this PR without breaking all the samples. * fix NRT grammar * revert non-type changes. * In progress draft First draft at language for variations of nullability and reference types. * Edit pass * Apply suggestions from code review Co-authored-by: Jon Skeet <[email protected]> * remove null-oblivious type * a fair amount of cleanup * fix build issues. * fix preprocessor symbols and test messages * one more warning fix. * respond to feedback. * respond to feedback. * Apply suggestions from code review Co-authored-by: Jon Skeet <[email protected]> * Notes for next updates * fix warnings * rebase and warnings * word converter warnings * word converter fx * fix merge issues * Updates from September meeting At our September meeting, we decided that the standard should limit its normative text to the syntax required for nullable reference types, and a basic description explaining that the purpose of the annotations is to provide diagnostics. * typo * lint issue * Add description of the `!` operator This makes sense to add to this PR logically. * null forgiveness can't be on array creation I think this may fix the left recursion error as well. Even if it doesn't, it's still correct. * Update for implicit declarations State the nullable type for implicitly typed variables * Apply suggestions from code review Co-authored-by: Jon Skeet <[email protected]> * final updates from Oct 2nd meeting Additional edits from comments at the Oct 2 meeting. This resolves all open concerns. * Apply suggestions from code review Co-authored-by: Nigel-Ecma <[email protected]> --------- Co-authored-by: Jon Skeet <[email protected]> Co-authored-by: Nigel-Ecma <[email protected]>
- Loading branch information
1 parent
fc1d698
commit 64cfcec
Showing
7 changed files
with
219 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.