// All Builders must have an llfn associated with them
#[must_use]
-pub struct Builder<'a, 'll: 'a, 'tcx: 'll> {
+pub struct Builder<'a, 'll: 'a, 'tcx: 'll, V: 'll = &'ll Value> {
pub llbuilder: &'ll mut llvm::Builder<'ll>,
- pub cx: &'a CodegenCx<'ll, 'tcx>,
+ pub cx: &'a CodegenCx<'ll, 'tcx, V>,
}
-impl Drop for Builder<'a, 'll, 'tcx> {
+impl<V> Drop for Builder<'_, '_, '_, V> {
fn drop(&mut self) {
unsafe {
llvm::LLVMDisposeBuilder(&mut *(self.llbuilder as *mut _));