Support multiple item macros

Closes #4375
This commit is contained in:
Steven Fackler 2013-11-24 23:08:53 -08:00 committed by Steven Fackler
parent 09f84aa8f4
commit c144752a2d
12 changed files with 180 additions and 124 deletions

View file

@ -13,7 +13,8 @@
macro_rules! ignored_item {
() => {
fn foo() {}
fn bar() {} //~ ERROR macro expansion ignores token `fn`
fn bar() {}
, //~ ERROR macro expansion ignores token `,`
}
}

View file

@ -0,0 +1,29 @@
// Copyright 2013 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution and at
// http://rust-lang.org/COPYRIGHT.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
// xfail-pretty - token trees can't pretty print
#[feature(macro_rules)];
macro_rules! make_foo(
() => (
struct Foo;
impl Foo {
fn bar(&self) {}
}
)
)
make_foo!()
pub fn main() {
Foo.bar()
}