macrotest icon indicating copy to clipboard operation
macrotest copied to clipboard

Test passes when there are errors in cargo-expand output

Open Pistonight opened this issue 8 months ago • 1 comments

I am not sure if this is a cargo-expand issue or intentional

If a syn::Type has generics and is used in an expression like #ty::#ident, cargo-expand outputs "(/ERROR/)"

use quote::quote;
let ty = syn::parse_quote! { Box<Foo> };
// put this somewhere in the expand output
quote! { #ty::some_thing }

The output will be:

(/*ERROR*/)

The catch is the syntax should be quote! { <#ty>::some_thing }. However, macrotest will pass.

Ideally, there are some places in other tests/examples that use the macro and will catch the issue, but would be nice if macrotest fails.

Pistonight avatar Jun 06 '24 01:06 Pistonight