macros: fix skipping generics on #[tokio::main] (#2177)

When using #[tokio::main] on a function with generics, the generics are
skipped. Simply using #vis #sig instead of #vis fn #name(#inputs) #ret
fixes the problem.

Fixes #2176
This commit is contained in:
daxpedda
2020-01-26 09:35:39 -08:00
committed by Carl Lerche
parent 5bf06f2b5a
commit 4996e27673
2 changed files with 24 additions and 16 deletions
+6
View File
@@ -5,6 +5,11 @@ async fn basic_main() -> usize {
1
}
#[tokio::main]
async fn generic_fun<T: Default>() -> T {
T::default()
}
#[cfg(feature = "rt-core")]
mod spawn {
#[tokio::main]
@@ -22,4 +27,5 @@ mod spawn {
#[test]
fn shell() {
assert_eq!(1, basic_main());
assert_eq!(bool::default(), generic_fun::<bool>())
}