Structure within macro not visible where used

The following code is reporting that TreeSemantics1 is not defined outside of the macro itself.

I've tried that internal structure pub, and not even that make difference; however, the IDE tooltip hovering over the TreeSemantics1 identifier points to the actual structure.

#![feature(decl_macro)]

pub struct TreeSemantics {
    common: TreeSemantics1,
}

macro impl_semantics_1 {
    () => {
        struct TreeSemantics1 {}
    },
}

impl_semantics_1!();

I had to pass an explicit identifier from outside to define the TreeSemantics1 structure and its new method:

impl_semantics_1!(
    TreeSemantics1,
    new,
    ...
);

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.