parse: merge fn syntax + cleanup item parsing by Centril · Pull Request #68728 · rust-lang/rust (original) (raw)

Conversation

This file contains hidden or 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

[ Show hidden characters]({{ revealButtonHref }})

Centril

@Centril Centril added T-lang

Relevant to the language team, which will review and decide on the PR/issue.

relnotes

Marks issues that should be documented in the release notes of the next release.

labels

Feb 1, 2020

petrochenkov

petrochenkov

petrochenkov

Centril added a commit to Centril/rust that referenced this pull request

Feb 2, 2020

@Centril

parser: syntactically allow self in all fn contexts

Part of rust-lang#68728.

self parameters are now syntactically allowed as the first parameter irrespective of item context (and in function pointers). Instead, semantic validation (ast_validation) is used.

r? @petrochenkov

Centril added a commit to Centril/rust that referenced this pull request

Feb 2, 2020

@Centril

parser: syntactically allow self in all fn contexts

Part of rust-lang#68728.

self parameters are now syntactically allowed as the first parameter irrespective of item context (and in function pointers). Instead, semantic validation (ast_validation) is used.

r? @petrochenkov

Centril added a commit to Centril/rust that referenced this pull request

Feb 5, 2020

@Centril

…henkov

Towards unified fn grammar

Part of rust-lang#68728.

r? @petrochenkov

Centril added a commit to Centril/rust that referenced this pull request

Feb 5, 2020

@Centril

…henkov

Towards unified fn grammar

Part of rust-lang#68728.

r? @petrochenkov

Dylan-DPC-zz pushed a commit to Dylan-DPC-zz/rust that referenced this pull request

Feb 6, 2020

@Dylan-DPC

…henkov

Towards unified fn grammar

Part of rust-lang#68728.

r? @petrochenkov

@Centril

@Centril

@Centril

@Centril

@Centril Centril added S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

and removed S-waiting-on-author

Status: This is awaiting some action (such as code changes or more information) from the author.

labels

Feb 13, 2020

@bors bors added S-waiting-on-bors

Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

and removed S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

labels

Feb 13, 2020

Dylan-DPC-zz pushed a commit to Dylan-DPC-zz/rust that referenced this pull request

Feb 13, 2020

@Dylan-DPC

…enkov

parse: merge fn syntax + cleanup item parsing

Here we continue the work in rust-lang#67131 in particular to merge the grammars of fn items in various positions.

A list of language level changes (as sanctioned by the language team in rust-lang#65041 (comment) and rust-lang#67131):

Put together, these grammar changes allow us to substantially reduce the complexity of item parsing and its grammar. There are however some other non-language improvements that allow the compression to take place.

A list of compiler-internal changes (in particular noting the parser-external data-structure changes):

I would recommend reviewing this commit-by-commit with whitespace changes hidden.

r? @estebank @petrochenkov

bors added a commit that referenced this pull request

Feb 13, 2020

@bors

Rollup of 9 pull requests

Successful merges:

Failed merges:

r? @ghost

@ehuss ehuss mentioned this pull request

Feb 14, 2020

netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request

May 16, 2020

@he32

Pkgsrc changes:

Upstream changes:

Version 1.43.0 (2020-04-23)

Language

Syntax only changes

These are still rejected semantically, so you will likely receive an error but these changes can be seen and parsed by macros and conditional compilation.

Compiler

Libraries

Stabilized APIs

Cargo

Misc

Compatibility Notes

Internal Only

These changes provide no direct user facing benefits, but represent significant improvements to the internals and overall performance of rustc and related tools.

@ehuss ehuss mentioned this pull request

Jul 31, 2020

@ehuss ehuss mentioned this pull request

Jan 11, 2021