diff options
| author | Huon Wilson <dbau.pp+github@gmail.com> | 2014-03-18 23:14:08 +1100 |
|---|---|---|
| committer | Huon Wilson <dbau.pp+github@gmail.com> | 2014-03-22 01:27:23 +1100 |
| commit | cda33346d0e9e4d1ff26163583831f96d42a4bc0 (patch) | |
| tree | 4ed80fc23ba6ee22c9c9be1c9fe3d093a7110a35 /src/rustllvm/ExecutionEngineWrapper.cpp | |
| parent | af9368452d8578af219713b34f7e3be4bd085186 (diff) | |
| download | rust-cda33346d0e9e4d1ff26163583831f96d42a4bc0.tar.gz rust-cda33346d0e9e4d1ff26163583831f96d42a4bc0.zip | |
syntax: allow `trace_macros!` and `log_syntax!` in item position.
Previously
trace_macros!(true)
fn main() {}
would complain about `trace_macros` being an expression macro in item
position. This is a pointless limitation, because the macro is purely
compile-time, with no runtime effect. (And similarly for log_syntax.)
This also changes the behaviour of `trace_macros!` very slightly, it
used to be equivalent to
macro_rules! trace_macros {
(true $($_x: tt)*) => { true };
(false $($_x: tt)*) => { false }
}
I.e. you could invoke it with arbitrary trailing arguments, which were
ignored. It is changed to accept only exactly `true` or `false` (with no
trailing arguments) and expands to `()`.
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
