New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Redo `hir::Stmt` #57689

Merged
merged 2 commits into from Jan 19, 2019

Conversation

Projects
None yet
5 participants
@nnethercote
Copy link
Contributor

nnethercote commented Jan 17, 2019

A couple of changes that make things simpler and more consistent.

This should probably wait until after 1.32 lands to land, to avoid late breakage for tools.

nnethercote added some commits Jan 16, 2019

Make `hir::Stmt` a separate struct.
Benefits:

- It lets us move the `NodeId` field out of every `hir::StmtKind`
  variant `NodeId` to a more sensible spot.

- It eliminates sadness in `Stmt::fmt`.

- It makes `hir::Stmt` match `ast::Stmt`.
Remove `hir::StmtKind::Decl`.
It's a level of indirection that hurts far more than it helps. The code
is simpler without it. (This commit cuts more than 120 lines of code.)

In particular, this commit removes some unnecessary `Span`s within
`DeclKind` that were always identical to those in the enclosing `Stmt`,
and some unnecessary allocations via `P`.
@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Jan 17, 2019

r? @michaelwoerister

(rust_highfive has picked a reviewer for you, use r? to override)

@petrochenkov petrochenkov removed their assignment Jan 17, 2019

@nnethercote

This comment has been minimized.

Copy link
Contributor Author

nnethercote commented Jan 17, 2019

1.32 has been released.

@bors r=petrochenkov

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Jan 17, 2019

📌 Commit afbd004 has been approved by petrochenkov

Centril added a commit to Centril/rust that referenced this pull request Jan 19, 2019

Rollup merge of rust-lang#57689 - nnethercote:redo-hir-Stmt, r=petroc…
…henkov

Redo `hir::Stmt`

A couple of changes that make things simpler and more consistent.

This should probably wait until after 1.32 lands to land, to avoid late breakage for tools.

bors added a commit that referenced this pull request Jan 19, 2019

Auto merge of #57761 - Centril:rollup, r=Centril
Rollup of 4 pull requests

Successful merges:

 - #57452 (Improve docs for Formatter)
 - #57689 (Redo `hir::Stmt`)
 - #57723 (Point at cause for expectation in return type type error)
 - #57736 (Remove delay_span_bug from qualify_min_const_fn)

Failed merges:

r? @ghost

@bors bors merged commit afbd004 into rust-lang:master Jan 19, 2019

@mikerite mikerite referenced this pull request Jan 20, 2019

Merged

Fix build 20190120 #3675

@nnethercote nnethercote deleted the nnethercote:redo-hir-Stmt branch Jan 21, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment