Skip to content

ICE: Where clause ... was applicable ... but now its not #21212

Closed
@Marwes

Description

@Marwes

Got another ICE after updating to the latest nightly to make sure the earlier one was not fixed. Seems to be related to the blanket impl.

pub trait Parser {
    type Input;

    fn parse(input: <Self as Parser>::Input) {
        panic!()
    }
}
impl <P> Parser for P  {
    type Input = ();
}

fn main() {
}

Part of the backtrace (note that it is over a 1000 frames deep):

`  1054:           0x7c145b - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1055:           0x7c131c - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1056:           0x7c0f31 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1057:           0x7c11ed - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1058:           0x7c10b8 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1059:           0x7bd3ee - middle::traits::select::SelectionCandidate<'tcx>.Repr<'tcx>::repr::ha7bc649c48dd119duhU
  1060:           0x7af481 - middle::ty::TraitPredicate<'tcx>.RegionEscape::has_regions_escaping_depth::h93030630e46b9a81cXa
  1061:           0x797d9a - middle::traits::select::SelectionContext<'cx, 'tcx>::select::ha331b95dc7b562dcevR
  1062:           0x7a0f6e - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1063:           0x79f46f - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1064:           0x79032a - middle::traits::select::SelectionContext<'cx, 'tcx>::new::h2fee7754856485f2DtR
  1065:           0x7827d2 - middle::traits::project::AssociatedTypeNormalizer<'a, 'b, 'tcx>.TypeFolder<'tcx>::fold_ty::h433ad154c5bfc06ex8P
  1066:           0x78239b - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1067:           0x7822d5 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1068:           0x7820d1 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1069:           0x781e01 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1070:           0x7a0107 - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1071:           0x7c2ce8 - middle::traits::util::upcast::hcb3b96bdfce84abdWDU
  1072:           0x7c145b - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1073:           0x7c131c - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1074:           0x7c0f31 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1075:           0x7c11ed - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1076:           0x7c10b8 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1077:           0x7bd3ee - middle::traits::select::SelectionCandidate<'tcx>.Repr<'tcx>::repr::ha7bc649c48dd119duhU
  1078:           0x7af481 - middle::ty::TraitPredicate<'tcx>.RegionEscape::has_regions_escaping_depth::h93030630e46b9a81cXa
  1079:           0x797d9a - middle::traits::select::SelectionContext<'cx, 'tcx>::select::ha331b95dc7b562dcevR
  1080:           0x7a0f6e - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1081:           0x79f46f - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1082:           0x79032a - middle::traits::select::SelectionContext<'cx, 'tcx>::new::h2fee7754856485f2DtR
  1083:           0x7827d2 - middle::traits::project::AssociatedTypeNormalizer<'a, 'b, 'tcx>.TypeFolder<'tcx>::fold_ty::h433ad154c5bfc06ex8P
  1084:           0x78239b - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1085:           0x7822d5 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1086:           0x7820d1 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1087:           0x781e01 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1088:           0x7a0107 - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1089:           0x7c2ce8 - middle::traits::util::upcast::hcb3b96bdfce84abdWDU
  1090:           0x7c145b - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1091:           0x7c131c - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1092:           0x7c0f31 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1093:           0x7c11ed - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1094:           0x7c10b8 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1095:           0x7bd3ee - middle::traits::select::SelectionCandidate<'tcx>.Repr<'tcx>::repr::ha7bc649c48dd119duhU
  1096:           0x7af481 - middle::ty::TraitPredicate<'tcx>.RegionEscape::has_regions_escaping_depth::h93030630e46b9a81cXa
  1097:           0x797d9a - middle::traits::select::SelectionContext<'cx, 'tcx>::select::ha331b95dc7b562dcevR
  1098:           0x7a0f6e - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1099:           0x79f46f - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1100:           0x79032a - middle::traits::select::SelectionContext<'cx, 'tcx>::new::h2fee7754856485f2DtR
  1101:           0x7827d2 - middle::traits::project::AssociatedTypeNormalizer<'a, 'b, 'tcx>.TypeFolder<'tcx>::fold_ty::h433ad154c5bfc06ex8P
  1102:           0x78239b - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1103:           0x7822d5 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1104:           0x7820d1 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1105:           0x781e01 - middle::ty::TraitRef<'tcx>...std..clone..Clone::clone::hf0f9884211fa7560b81
  1106:           0x7a0107 - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1107:           0x7c2ce8 - middle::traits::util::upcast::hcb3b96bdfce84abdWDU
  1108:           0x7c145b - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1109:           0x7c131c - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1110:           0x7c0f31 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1111:           0x7c11ed - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1112:           0x7c10b8 - middle::traits::util::transitive_bounds::hc34e0d738f285867ewU
  1113:           0x7bd3ee - middle::traits::select::SelectionCandidate<'tcx>.Repr<'tcx>::repr::ha7bc649c48dd119duhU
  1114:           0x7af481 - middle::ty::TraitPredicate<'tcx>.RegionEscape::has_regions_escaping_depth::h93030630e46b9a81cXa
  1115:           0x797d9a - middle::traits::select::SelectionContext<'cx, 'tcx>::select::ha331b95dc7b562dcevR
  1116:           0x7a0f6e - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1117:           0x79f46f - middle::traits::project::MismatchedProjectionTypes<'tcx>...std..clone..Clone::clone::hd0e53daa7f8cb8b84VP
  1118:           0x79032a - middle::traits::select::SelectionContext<'cx, 'tcx>::new::h2fee7754856485f2DtR
  1119:           0x7827d2 - middle::traits::project::AssociatedTypeNormalizer<'a, 'b, 'tcx>.TypeFolder<'tcx>::fold_ty::h433ad154c5bfc06ex8P
  1120:         0x6d516800 - check::LvaluePreference...std..fmt..Show::fmt::h5272dbd85814d21eQwm
  1121:         0x6d563ca0 - check::CheckItemTypesVisitor<'a, 'tcx>.Visitor<'v>::visit_ty::hf7b2769fbb00c197C2j
  1122:         0x6d567519 - check::GatherLocalsVisitor<'a, 'tcx>.Visitor<'v>::visit_item::h78f3f91a65a28633zek
  1123:         0x6d55ea2a - check::CheckItemTypesVisitor<'a, 'tcx>.Visitor<'v>::visit_item::h7e39ae7a460329b5f2j
  1124:         0x6d623ae0 - check_crate::h33c0c907222d09c6ney
  1125:         0x6d61eb73 - check_crate::h33c0c907222d09c6ney
  1126:         0x70b1842b - driver::phase_3_run_analysis_passes::hc9c3dcc21180760aEEa
  1127:         0x70b02471 - driver::compile_input::h4586659868b7e370Aba
  1128:         0x70bc0717 - run::h6e0f5d9a92373b23M4b
  1129:         0x70bbea98 - run::h6e0f5d9a92373b23M4b
  1130:         0x70bbd91a - run::h6e0f5d9a92373b23M4b
  1131:         0x69c28a8c - rust_try
  1132:         0x69c28a69 - rust_try
  1133:         0x70bbdf4f - run::h6e0f5d9a92373b23M4b
  1134:         0x69bf0e92 - sys::tcp::TcpListener::bind::hfa20d1671f8885a2JHw
  1135:     0x7ffb10d216ad - BaseThreadInitThunk
rustc 1.0.0-nightly (170c4399e 2015-01-14 00:41:55 +0000)
binary: rustc
commit-hash: 170c4399e614fe599c3d41306b3429ca8b3b68c6
commit-date: 2015-01-14 00:41:55 +0000
host: x86_64-pc-windows-gnu
release: 1.0.0-nightly

Metadata

Metadata

Assignees

Labels

A-associated-itemsArea: Associated items (types, constants & functions)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