Skip to content

ICE on illegal macro_rules! #21131

Closed
@bombless

Description

@bombless
macro_rules! a {
    ( $b:ident $c:d $e:expr ) => ()
}
fn main(){ a! (_ _ ()   ) }

I work on Windows 8.1 64-bit, rustc version:

rustc 1.0.0-nightly (44a287e 2015-01-08 17:03:40 -0800)
binary: rustc
commit-hash: 44a287e
commit-date: 2015-01-08 17:03:40 -0800
host: i686-pc-windows-gnu
release: 1.0.0-nightly

BTW, the same ICE occurred for my

rustc 1.0.0-dev (e94a9f0 2015-01-13 14:21:39 +0000)
binary: rustc
commit-hash: e94a9f0
commit-date: 2015-01-13 14:21:39 +0000
host: i686-pc-windows-gnu
release: 1.0.0-dev

but it did not print backtrace with RUST_BACKTRACE=1 and I don't know why.

thread 'rustc' panicked at 'Box<Any>', C:\bot\slave\nightly-dist-rustc-win-32\build\src\libsyntax\diagnostic.rs:182

stack backtrace:
   1: 0x62f3ce2f - rt::unwind::register::he1c697e5991dcbf88Dz
   2: 0x62ec350c - rt::unwind::begin_unwind_inner::ha377d8b3de16ce78GBz
   3: 0x658e69dd - diagnostic::SpanHandler::span_bug::hf9b8fabf119953ecxSF
   4: 0x658e7103 - diagnostic::Handler::bug::h7d37051ed217693bDYF
   5: 0x65b39ff7 - ext::tt::macro_rules::MacroRulesMacroExpander.TTMacroExpander::expand::h047b7a0b6c61818c2aj
   6: 0x65b39878 - ext::tt::macro_rules::MacroRulesMacroExpander.TTMacroExpander::expand::h047b7a0b6c61818c2aj
   7: 0x65a2c353 - ext::tt::macro_rules::compile::h95bbd1bcd05e6c8eNgj
   8: 0x65a2adb0 - ext::base::ExtCtxt<'a>::insert_macro::h279f2a5168f52f0ceI7
   9: 0x65a8a68a - ext::expand::expand_item_mac::h0bd54e13715a34faroe
  10: 0x65a87e8d - ext::expand::expand_item::h15332b1efc816b6fJee
  11: 0x65a92c2e - ext::expand::MacroExpander<'a, 'b>.Folder::fold_item::h8a22bd9e1bffbffdZYe
  12: 0x65a9290a - ext::expand::MacroExpander<'a, 'b>.Folder::fold_item_underscore::h7346259db13cd16bXZe
  13: 0x65a928be - ext::expand::MacroExpander<'a, 'b>.Folder::fold_item_underscore::h7346259db13cd16bXZe
  14: 0x65a91672 - ext::expand::MacroExpander<'a, 'b>.Folder::fold_item_underscore::h7346259db13cd16bXZe
  15: 0x65a8d244 - ext::expand::MacroExpander<'a, 'b>.Folder::fold_item_underscore::h7346259db13cd16bXZe
  16: 0x65a8b9e1 - ext::expand::expand_item_mac::h0bd54e13715a34faroe
  17: 0x65a8b7fd - ext::expand::expand_item_mac::h0bd54e13715a34faroe
  18: 0x65a883f8 - ext::expand::expand_item::h15332b1efc816b6fJee
  19: 0x65a92c2e - ext::expand::MacroExpander<'a, 'b>.Folder::fold_item::h8a22bd9e1bffbffdZYe
  20: 0x65aed2f7 - ext::expand::expand_crate::hf100dfd342b7bf10g3e
  21: 0x6b813008 - driver::collect_crate_metadata::hdc24c4d589042a1fDZa
  22: 0x6b7d0eac - driver::phase_2_configure_and_expand::h39ba3ed9597c0495Xja
  23: 0x6b7c1867 - driver::compile_input::hdb1b2f5e3352478cxba
  24: 0x6b892829 - run::h9a36f6fac224e9f5V3b
  25: 0x6b890caf - run::h9a36f6fac224e9f5V3b
  26: 0x6b88f9af - run::h9a36f6fac224e9f5V3b
  27: 0x62f6879c - rust_try
  28: 0x62f2e597 - sys::tcp::TcpListener::bind::h84f1a79868ba93248qw
  29: 0x76ef919f - BaseThreadInitThunk
  30: 0x77da0bbb - RtlInitializeExceptionChain

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-macrosArea: All kinds of macros (custom derive, macro_rules!, proc macros, ..)I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions