From a528b7dc5646113d157033ceb762768f2b85c3f6 Mon Sep 17 00:00:00 2001
From: thiolliere <gui.thiolliere@gmail.com>
Date: Sat, 24 Aug 2019 17:41:45 +0200
Subject: [PATCH] improve error msg on wrong closure signature (#3467)

---
 .../procedural/src/storage/transformation.rs        | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/substrate/srml/support/procedural/src/storage/transformation.rs b/substrate/srml/support/procedural/src/storage/transformation.rs
index d378907cb1e..eb479a26648 100644
--- a/substrate/srml/support/procedural/src/storage/transformation.rs
+++ b/substrate/srml/support/procedural/src/storage/transformation.rs
@@ -35,7 +35,7 @@ use syn::{
 	},
 	parse_macro_input,
 };
-use quote::quote;
+use quote::{quote, quote_spanned};
 
 use super::*;
 
@@ -417,7 +417,16 @@ fn decl_store_extra_genesis(
 					}
 					assimilate_require_generic |= ext::expr_contains_ident(&expr.content, traitinstance);
 					let content = &expr.content;
-					scall = quote!( ( #content ) );
+					scall = quote_spanned! { expr.span() =>
+						let scall: fn(
+							&mut (
+								#scrate::sr_primitives::StorageOverlay,
+								#scrate::sr_primitives::ChildrenStorageOverlay
+							),
+							&Self
+						) = #content;
+						scall
+					};
 					has_scall = true;
 				},
 			}
-- 
GitLab