diff --git a/src/building_blocks.jl b/src/building_blocks.jl
index 76229872425396fa926eaeefd7f045f0c82ece10..4b753da8ae43e51aaf34fe6ced440005d6465b37 100644
--- a/src/building_blocks.jl
+++ b/src/building_blocks.jl
@@ -295,6 +295,6 @@ Replaces a [`BuildingBlock`](@ref) or whole sequence with a generic version.
 
 This replaces all functional RF pulses and gradient waveforms with their generic equivalents.
 """
-make_generic(grad::GradientBlock) = grad
+function make_generic end
 
 end
\ No newline at end of file
diff --git a/src/overlapping/generic.jl b/src/overlapping/generic.jl
index 92a3ebb5e9ab77b10ac0b23447c71a341fcbe9ea..3ef5addb652a6d91b9a6e12ea0e314a1ca821804 100644
--- a/src/overlapping/generic.jl
+++ b/src/overlapping/generic.jl
@@ -33,12 +33,13 @@ GenericOverlapping(other_waveform::AbstractOverlapping) = GenericOverlapping(dur
 
 make_generic(ao::AbstractOverlapping) = GenericOverlapping(
     duration(ao), 
-    make_generic.(waveform_sequence(ao)), 
+    waveform_sequence(ao), 
     [(index=i.index, time=i.time, object=make_generic(i.object)) for i in interruptions(ao)]
 )
 
 waveform_sequence(go::GenericOverlapping) = go.waveform
 interruptions(go::GenericOverlapping) = go.interruptions
 
+make_generic(wait::WaitBlock) = GenericOverlapping(wait.duration, [], [])
 
 end
\ No newline at end of file