diff --git a/tokio-macros/src/entry.rs b/tokio-macros/src/entry.rs index 8816a43af54..ada48a135e0 100644 --- a/tokio-macros/src/entry.rs +++ b/tokio-macros/src/entry.rs @@ -321,6 +321,12 @@ fn parse_knobs( quote! {} }; + let tail_semicolon = match input.sig.output { + syn::ReturnType::Default => quote! { + ; + }, + syn::ReturnType::Type(..) => quote! {}, + }; let body = &input.block; let brace_token = input.block.brace_token; input.block = syn::parse2(quote_spanned! {last_stmt_end_span=> @@ -331,7 +337,7 @@ fn parse_knobs( .enable_all() .build() .expect("Failed building the Runtime") - .block_on(body) + .block_on(body)#tail_semicolon } }) .expect("Parsing failure");