I'm very sorry to worry you again, but the problem with nested macros still exists.
For now, there's no way to invoke nested macro in nested macro without increasing internal_macro_calls. In example below this value in join_all! macro attribute is 5 because in code
#[proc_macro_hack(support_nested, internal_macro_calls = 5)]
pub use proc_macro_hack_bug_impl::join_all;
async fn add_nested_custom_joined_results() -> usize {
let results = join_all!(ready(join_all!(ready(7usize)).0), ready(join_all!(ready(8usize)).0), ready(join_all!(ready(join_all!(ready(9usize)).0)).0));
results.0 + results.1 + results.2
}
we have 5 calls of join_all! macro each of which inserts 1 nested join! macro. Of course this problem can be solved by setting internal_macro_calls to maximum value, but...
Unfortunately, in situation with join_all_x2! even value of 60 doesn't help. ===> https://github.com/olegnn/proc_macro_hack_bug
I'm very sorry to worry you again, but the problem with nested macros still exists.
For now, there's no way to invoke nested macro in nested macro without increasing
internal_macro_calls. In example below this value injoin_all!macro attribute is5because in codewe have
5calls ofjoin_all!macro each of which inserts 1 nestedjoin!macro. Of course this problem can be solved by settinginternal_macro_callsto maximum value, but...Unfortunately, in situation with
join_all_x2!even value of60doesn't help. ===> https://github.com/olegnn/proc_macro_hack_bug