about summary refs log tree commit diff
path: root/compiler/rustc_codegen_ssa/src
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_codegen_ssa/src')
-rw-r--r--compiler/rustc_codegen_ssa/src/traits/builder.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler/rustc_codegen_ssa/src/traits/builder.rs b/compiler/rustc_codegen_ssa/src/traits/builder.rs
index c88bd7c82bc..98cb497766a 100644
--- a/compiler/rustc_codegen_ssa/src/traits/builder.rs
+++ b/compiler/rustc_codegen_ssa/src/traits/builder.rs
@@ -17,7 +17,7 @@ use super::debuginfo::DebugInfoBuilderMethods;
 use super::intrinsic::IntrinsicCallBuilderMethods;
 use super::misc::MiscMethods;
 use super::type_::{ArgAbiBuilderMethods, BaseTypeMethods, LayoutTypeMethods};
-use super::{BackendTypes, CodegenMethods, StaticBuilderMethods};
+use super::{CodegenMethods, StaticBuilderMethods};
 use crate::common::{
     AtomicOrdering, AtomicRmwBinOp, IntPredicate, RealPredicate, SynchronizationScope, TypeKind,
 };
@@ -45,8 +45,11 @@ pub trait BuilderMethods<'a, 'tcx>:
     + AsmBuilderMethods<'tcx>
     + StaticBuilderMethods
 {
-    type CodegenCx: CodegenMethods<'tcx>
-        + BackendTypes<
+    // `BackendTypes` is a supertrait of both `CodegenMethods` and
+    // `BuilderMethods`. This bound ensures all impls agree on the associated
+    // types within.
+    type CodegenCx: CodegenMethods<
+            'tcx,
             Value = Self::Value,
             Function = Self::Function,
             BasicBlock = Self::BasicBlock,