about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2016-09-27 11:51:56 -0700
committerAlex Crichton <alex@alexcrichton.com>2016-09-27 12:41:02 -0700
commite5e7021ca5b67c17fa116a971c3204bd147a1f0d (patch)
tree5a02e6715d798f0cca684fa30ceab61d0ca01853 /src/rustllvm/RustWrapper.cpp
parentea65ab6c7e96bf38c291ed7192137e6b96772687 (diff)
downloadrust-e5e7021ca5b67c17fa116a971c3204bd147a1f0d.tar.gz
rust-e5e7021ca5b67c17fa116a971c3204bd147a1f0d.zip
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