Skip to content

[ICE] with mir-opt-level=3 #50411

Closed
Closed
@leonardo-m

Description

@leonardo-m
fn main() {
    let _ = (0 .. 1).filter(|_| [1].iter().all(|_| true)).count();
}

Compiling with:

rustc -Z mir-opt-level=3 test.rs

Gives:

error: internal compiler error: librustc_mir\dataflow\move_paths\builder.rs:296: SetDiscriminant should not exist during borrowck

thread 'main' panicked at 'Box<Any>', librustc_errors\lib.rs:499:9
stack backtrace:
   0: mingw_set_invalid_parameter_handler
   1: mingw_set_invalid_parameter_handler
   2: mingw_set_invalid_parameter_handler
   3: mingw_set_invalid_parameter_handler
   4: mingw_set_invalid_parameter_handler
   5: mingw_set_invalid_parameter_handler
   6: mingw_set_invalid_parameter_handler
   7: mingw_set_invalid_parameter_handler
   8: mingw_set_invalid_parameter_handler
   9: mingw_set_invalid_parameter_handler
  10: mingw_set_invalid_parameter_handler
  11: mingw_set_invalid_parameter_handler
  12: mingw_set_invalid_parameter_handler
  13: mingw_set_invalid_parameter_handler
  14: mingw_set_invalid_parameter_handler
  15: mingw_set_invalid_parameter_handler
  16: mingw_set_invalid_parameter_handler
  17: mingw_set_invalid_parameter_handler
  18: mingw_set_invalid_parameter_handler
  19: mingw_set_invalid_parameter_handler
  20: mingw_set_invalid_parameter_handler
  21: mingw_set_invalid_parameter_handler
  22: mingw_set_invalid_parameter_handler
  23: mingw_set_invalid_parameter_handler
  24: mingw_set_invalid_parameter_handler
  25: mingw_set_invalid_parameter_handler
  26: mingw_set_invalid_parameter_handler
  27: mingw_set_invalid_parameter_handler
  28: mingw_set_invalid_parameter_handler
  29: mingw_set_invalid_parameter_handler
  30: mingw_set_invalid_parameter_handler
  31: mingw_set_invalid_parameter_handler
  32: mingw_set_invalid_parameter_handler
  33: mingw_set_invalid_parameter_handler
  34: mingw_set_invalid_parameter_handler
  35: mingw_set_invalid_parameter_handler
  36: mingw_set_invalid_parameter_handler
  37: mingw_set_invalid_parameter_handler
  38: mingw_set_invalid_parameter_handler
  39: mingw_set_invalid_parameter_handler
  40: mingw_set_invalid_parameter_handler
  41: mingw_set_invalid_parameter_handler
  42: mingw_set_invalid_parameter_handler
  43: mingw_set_invalid_parameter_handler
  44: mingw_set_invalid_parameter_handler
  45: mingw_set_invalid_parameter_handler
  46: mingw_set_invalid_parameter_handler
  47: mingw_set_invalid_parameter_handler
  48: mingw_set_invalid_parameter_handler
  49: std::rt::lang_start::{{closure}}
  50: mingw_set_invalid_parameter_handler
  51: mingw_set_invalid_parameter_handler
  52: mingw_set_invalid_parameter_handler
  53: main
  54: _tmainCRTStartup
  55: mainCRTStartup
  56: mingw_set_invalid_parameter_handler
  57: mingw_set_invalid_parameter_handler
query stack during panic:
#0 [optimized_mir] processing `main::{{closure}}`
#1 [collect_and_partition_translation_items] collect_and_partition_translation_items
end of query stack
error: aborting due to previous error

note: rustc 1.27.0-nightly (8a37c75a3 2018-05-02) running on x86_64-pc-windows-gnu

note: compiler flags: -Z mir-opt-level=3
rustc 1.27.0-nightly (8a37c75a3 2018-05-02)
binary: rustc
commit-hash: 8a37c75a3a661385cc607d934c70e86a9eaf5fd7
commit-date: 2018-05-02
host: x86_64-pc-windows-gnu
release: 1.27.0-nightly
LLVM version: 6.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-MIRArea: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.htmlC-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions