diff --git a/maud_macros/src/render.rs b/maud_macros/src/render.rs
index b7eee1a..594fb62 100644
--- a/maud_macros/src/render.rs
+++ b/maud_macros/src/render.rs
@@ -71,7 +71,10 @@ impl<'cx> Renderer<'cx> {
             $loop_label: loop {
                 use ::std::fmt::Write;
                 match &mut $writer_expr {
-                    $writer => { $stmts }
+                    $writer => {
+                        $writer as &mut ::std::fmt::Write;
+                        $stmts
+                    }
                 }
                 break $loop_label;
             }