about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorJonathan Turner <jonathandturner@users.noreply.github.com>2016-09-28 10:33:57 -0700
committerGitHub <noreply@github.com>2016-09-28 10:33:57 -0700
commitf819b4d72d7034d62c1d79f1bc8643482983b7db (patch)
tree166e2d99e7dcebea7b079401d4c5ab402ca33fca /src/rustllvm/RustWrapper.cpp
parentf7f1903b8906e1c078a3f5168d0a8994aee520b5 (diff)
parente5e7021ca5b67c17fa116a971c3204bd147a1f0d (diff)
downloadrust-f819b4d72d7034d62c1d79f1bc8643482983b7db.tar.gz
rust-f819b4d72d7034d62c1d79f1bc8643482983b7db.zip
Rollup merge of #36782 - alexcrichton:rustc-macro-expand-order, r=nrc
rustc: Tweak expansion order of custom derive

This commit alters the expansion order of custom macros-1.1 style `#[derive]`
modes. Instead of left-to-right the expansion now happens in three categories,
each of which is internally left-to-right:

* Old-style custom derive (`#[derive_Foo]`) is expanded
* New-style custom derive (macros 1.1) is expanded
* Built in derive modes are expanded

This gives built in derive modes maximal knowledge about the struct that's being
expanded and also avoids pesky issues like exposing `#[structural_match]` or
`#[rustc_copy_clone_marker]`.

cc #35900
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions