From f1c4e09ac30944eccb9160c489f1dbf43226e293 Mon Sep 17 00:00:00 2001 From: Chris Wong <lambda.fairy@gmail.com> Date: Sun, 12 Jun 2016 15:39:12 +1200 Subject: [PATCH] Silence "duplicate loop labels" warnings Closes #36 --- maud_macros/src/render.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/maud_macros/src/render.rs b/maud_macros/src/render.rs index 3b9e3c0..658befc 100644 --- a/maud_macros/src/render.rs +++ b/maud_macros/src/render.rs @@ -20,7 +20,10 @@ impl<'cx, 'a> Renderer<'cx, 'a> { pub fn new(cx: &'cx ExtCtxt<'a>) -> Renderer<'cx, 'a> { let writer = token::gensym_ident("__maud_writer"); let result = token::gensym_ident("__maud_result"); - let loop_label = token::gensym_ident("__maud_loop_label"); + // Silence "duplicate loop labels" warning by appending ExpnId to label + // FIXME This is a gross hack and should be replaced ASAP + // See issues #36 and #37 + let loop_label = token::gensym_ident(&format!("__maud_loop_label_{}", cx.backtrace.into_u32())); Renderer { cx: cx, writer: writer,