Closed
Description
I'm getting a crash when trying to compiler a bunch of const objects, not sure why.
Sounce code:
https://github.com/IdeaHat/servo/
Branch: staticifying
Commit: 52308c1f01f172caacd4a71a04e0bc519824eba2
Compiliation Instructions:
./mach build
./mach rustc --test ./components/net/mime_classifier.rs
components/net/mime_classifier.rs:349:52: 349:55 warning: path statement with no effect, #[warn(path_statements)] on by default
components/net/mime_classifier.rs:349 if tp.is_some() { tp;}
^~~
components/net/mime_classifier.rs:779:1: 792:3 warning: constant item is never used: `APPLICATION_VND_MS_FONT_OBJECT`, #[warn(dead_code)] on by default
components/net/mime_classifier.rs:779 const APPLICATION_VND_MS_FONT_OBJECT : ByteMatcher = ByteMatcher {
components/net/mime_classifier.rs:780 pattern: [0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8,
components/net/mime_classifier.rs:781 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8,
components/net/mime_classifier.rs:782 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8,
components/net/mime_classifier.rs:783 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8, 0x00u8,
components/net/mime_classifier.rs:784 0x00u8, 0x00u8, 0x4Cu8, 0x50u8],
...
components/net/mime_classifier.rs:795:1: 800:3 warning: constant item is never used: `TRUE_TYPE`, #[warn(dead_code)] on by default
components/net/mime_classifier.rs:795 const TRUE_TYPE : ByteMatcher = ByteMatcher {
components/net/mime_classifier.rs:796 pattern: [0x00u8, 0x01u8, 0x00u8, 0x00u8],
components/net/mime_classifier.rs:797 mask: [0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8],
components/net/mime_classifier.rs:798 content_type: ("(TrueType)",""),
components/net/mime_classifier.rs:799 leading_ignore: []
components/net/mime_classifier.rs:800 };
components/net/mime_classifier.rs:803:1: 808:3 warning: constant item is never used: `OPEN_TYPE`, #[warn(dead_code)] on by default
components/net/mime_classifier.rs:803 const OPEN_TYPE : ByteMatcher = ByteMatcher {
components/net/mime_classifier.rs:804 pattern: [0x4Fu8, 0x54u8, 0x54u8, 0x4Fu8],
components/net/mime_classifier.rs:805 mask: [0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8],
components/net/mime_classifier.rs:806 content_type: ("(OpenType)",""),
components/net/mime_classifier.rs:807 leading_ignore: []
components/net/mime_classifier.rs:808 };
components/net/mime_classifier.rs:810:1: 815:3 warning: constant item is never used: `TRUE_TYPE_COLLECTION`, #[warn(dead_code)] on by default
components/net/mime_classifier.rs:810 const TRUE_TYPE_COLLECTION : ByteMatcher = ByteMatcher {
components/net/mime_classifier.rs:811 pattern: [0x74u8, 0x74u8, 0x63u8, 0x66u8],
components/net/mime_classifier.rs:812 mask: [0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8],
components/net/mime_classifier.rs:813 content_type: ("(TrueType Collection)",""),
components/net/mime_classifier.rs:814 leading_ignore: []
components/net/mime_classifier.rs:815 };
components/net/mime_classifier.rs:818:1: 823:3 warning: constant item is never used: `APPLICATION_FONT_WOFF`, #[warn(dead_code)] on by default
components/net/mime_classifier.rs:818 const APPLICATION_FONT_WOFF : ByteMatcher = ByteMatcher {
components/net/mime_classifier.rs:819 pattern: [0x77u8, 0x4Fu8, 0x46u8, 0x46u8],
components/net/mime_classifier.rs:820 mask: [0xFFu8, 0xFFu8, 0xFFu8, 0xFFu8],
components/net/mime_classifier.rs:821 content_type: ("application","font-woff"),
components/net/mime_classifier.rs:822 leading_ignore: []
components/net/mime_classifier.rs:823 };
components/net/mime_classifier.rs:965:1: 973:3 warning: constant item is never used: `FONT_CLASSIFIER`, #[warn(dead_code)] on by default
components/net/mime_classifier.rs:965 const FONT_CLASSIFIER : GroupedClassifier = GroupedClassifier {
components/net/mime_classifier.rs:966 matchers: &[
components/net/mime_classifier.rs:967 &APPLICATION_FONT_WOFF,
components/net/mime_classifier.rs:968 &TRUE_TYPE_COLLECTION,
components/net/mime_classifier.rs:969 &OPEN_TYPE,
components/net/mime_classifier.rs:970 &TRUE_TYPE,
...
components/net/mime_classifier.rs:980:9: 980:30 warning: unused import, #[warn(unused_imports)] on by default
components/net/mime_classifier.rs:980 use super::MIMEClassifier;
^~~~~~~~~~~~~~~~~~~~~
components/net/mime_classifier.rs:883:7: 883:20 error: internal compiler error: unimplemented type in const unsize: ByteMatcher
components/net/mime_classifier.rs:883 &IMAGE_X_ICON,
^~~~~~~~~~~~~
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: http://doc.rust-lang.org/complement-bugreport.html
note: run with `RUST_BACKTRACE=1` for a backtrace
task 'rustc' panicked at 'Box<Any>', /home/larsberg/rust/src/libsyntax/diagnostic.rs:116
stack backtrace:
1: 0x7faa03b8e810 - rt::backtrace::imp::write::h51da061815fd4fecscq
2: 0x7faa03b91890 - failure::on_fail::h574424058645b8db3xq
3: 0x7faa080cb1b0 - unwind::begin_unwind_inner::h0e863b3f5b6ff01e7Rd
4: 0x7faa04d465e0 - unwind::begin_unwind::h17623318924066054232
5: 0x7faa04d46560 - diagnostic::SpanHandler::span_bug::h6b5bb3dcbe506a53H6F
6: 0x7faa08b097f0 - middle::trans::consts::const_expr::h24471e6fd8e1d3e6Kwb
7: 0x7faa08b0af50 - middle::trans::consts::const_expr_unadjusted::h8d313c26ba6568f6LJb
8: 0x7faa08b097f0 - middle::trans::consts::const_expr::h24471e6fd8e1d3e6Kwb
9: 0x7faa08b0af50 - middle::trans::consts::const_expr_unadjusted::h8d313c26ba6568f6LJb
10: 0x7faa08b097f0 - middle::trans::consts::const_expr::h24471e6fd8e1d3e6Kwb
11: 0x7faa08b106e0 - middle::trans::consts::const_expr_unadjusted::closure.126339
12: 0x7faa08b0f400 - middle::trans::expr::with_field_tys::h4176170177473143547
13: 0x7faa08b0af50 - middle::trans::consts::const_expr_unadjusted::h8d313c26ba6568f6LJb
14: 0x7faa08b097f0 - middle::trans::consts::const_expr::h24471e6fd8e1d3e6Kwb
15: 0x7faa08a85410 - middle::trans::base::get_item_val::hb5c95cce53ad1c32TGi
16: 0x7faa08b0abc0 - middle::trans::consts::get_const_val::hbdc13f3d5e74a915wvb
17: 0x7faa08b0af50 - middle::trans::consts::const_expr_unadjusted::h8d313c26ba6568f6LJb
18: 0x7faa08b097f0 - middle::trans::consts::const_expr::h24471e6fd8e1d3e6Kwb
19: 0x7faa08b0af50 - middle::trans::consts::const_expr_unadjusted::h8d313c26ba6568f6LJb
20: 0x7faa08b097f0 - middle::trans::consts::const_expr::h24471e6fd8e1d3e6Kwb
21: 0x7faa08b106e0 - middle::trans::consts::const_expr_unadjusted::closure.126339
22: 0x7faa08b0f400 - middle::trans::expr::with_field_tys::h4176170177473143547
23: 0x7faa08b0af50 - middle::trans::consts::const_expr_unadjusted::h8d313c26ba6568f6LJb
24: 0x7faa08b097f0 - middle::trans::consts::const_expr::h24471e6fd8e1d3e6Kwb
25: 0x7faa08a85410 - middle::trans::base::get_item_val::hb5c95cce53ad1c32TGi
26: 0x7faa08ad46b0 - middle::trans::expr::trans_def::hd1e848679c813cf2ft6
27: 0x7faa08acbce0 - middle::trans::expr::trans_unadjusted::h23078de2d39048ed9Y5
28: 0x7faa08a947f0 - middle::trans::expr::trans::h212dc78148e7c0705h5
29: 0x7faa08ad7b90 - middle::trans::expr::trans_addr_of::h921cc66a9f5ab965js7
30: 0x7faa08acbce0 - middle::trans::expr::trans_unadjusted::h23078de2d39048ed9Y5
31: 0x7faa08a93210 - middle::trans::expr::trans_into::hb8916173f4417b10be5
32: 0x7faa08b5e440 - middle::trans::_match::store_local::closure.127862
33: 0x7faa08b5e0d0 - middle::trans::_match::mk_binding_alloca::h6529477691948147476
34: 0x7faa08b2d250 - middle::trans::_match::store_local::hb44613d070de7debY9k
35: 0x7faa08a92860 - middle::trans::base::init_local::h133e0c8c07b0fc21mLg
36: 0x7faa08a91c20 - middle::trans::controlflow::trans_stmt::hba2148511ea96f7fMp1
37: 0x7faa08a93630 - middle::trans::controlflow::trans_block::h716e4eeaa8840a1bSu1
38: 0x7faa08b34260 - middle::trans::base::trans_closure::h351dbed1a5bde932RFh
39: 0x7faa08a86890 - middle::trans::base::trans_fn::h3693aec3731e5d78ERh
40: 0x7faa08a840f0 - middle::trans::base::trans_item::h45f52e422775a7f1Sai
41: 0x7faa08a840f0 - middle::trans::base::trans_item::h45f52e422775a7f1Sai
42: 0x7faa08b3ea30 - middle::trans::base::trans_crate::h99c1d4d2a3b84039T8i
43: 0x7faa08f90760 - driver::driver::phase_4_translate_to_llvm::h4ec643d39136fc7dAyC
44: 0x7faa08f87600 - driver::driver::compile_input::h9bffb5cb96391869u5B
45: 0x7faa0900a880 - driver::run_compiler::he276f2ba56b78164LVF
46: 0x7faa0900a770 - driver::run::closure.146540
47: 0x7faa08744ae0 - task::TaskBuilder<S>::try_future::closure.104852
48: 0x7faa087448d0 - task::TaskBuilder<S>::spawn_internal::closure.104823
49: 0x7faa08411c90 - task::NativeSpawner.Spawner::spawn::closure.8456
50: 0x7faa08120150 - rust_try_inner
51: 0x7faa08120140 - rust_try
52: 0x7faa080c8b30 - unwind::try::h5eecabeb9eb443b7PGd
53: 0x7faa080c89c0 - task::Task::run::h8328b0b81b516de7FMc
54: 0x7faa084119d0 - task::NativeSpawner.Spawner::spawn::closure.8394
55: 0x7faa080ca1d0 - thread::thread_start::h75cf1dc3cee75378U7c
56: 0x7faa02f3d0c0 - start_thread
57: 0x7faa07d942d9 - __clone
58: 0x0 - <unknown>