   Compiling pomelo v0.2.1 (/home/rodrigo/projects/pomelo)
error: Generic parameter in Token is not in Parser
  --> tests/pass/generics.rs:50:26
   |
50 |     %token enum Token<T, G>{ };
   |                          ^

error: type parameter `T` is only used recursively
  --> tests/pass/generics.rs:37:27
   |
37 |     %parser struct Parser<T> { };
   |                           ^ type parameter must be used non-recursively in the definition
   |
   = help: consider removing `T`, referring to it in a field, or using a marker such as `PhantomData`
   = note: all type parameters must be used in a non-recursive way in order to constrain their variance

error[E0392]: type parameter `T` is never used
  --> tests/pass/generics.rs:37:27
   |
37 |     %parser struct Parser<T> { };
   |                           ^
   |                           |
   |                           unused type parameter
   |                           `T` is named here, but is likely unused in the containing type
   |
   = help: consider removing `T`, referring to it in a field, or using a marker such as `PhantomData`
   = help: if you intended `T` to be a const parameter, use `const T: /* Type */` instead

error: type parameter `T` is only used recursively
  --> tests/pass/generics.rs:43:23
   |
43 |     %token enum Token<T>{ };
   |                       ^ type parameter must be used non-recursively in the definition
   |
   = help: consider removing `T`, referring to it in a field, or using a marker such as `PhantomData`
   = note: all type parameters must be used in a non-recursive way in order to constrain their variance

error[E0392]: type parameter `T` is never used
  --> tests/pass/generics.rs:43:23
   |
43 |     %token enum Token<T>{ };
   |                       ^ unused type parameter
   |
   = help: consider removing `T`, referring to it in a field, or using a marker such as `PhantomData`
   = help: if you intended `T` to be a const parameter, use `const T: /* Type */` instead

error[E0392]: type parameter `T` is never used
  --> tests/pass/generics.rs:43:23
   |
43 |     %token enum Token<T>{ };
   |                       ^
   |                       |
   |                       unused type parameter
   |                       `T` is named here, but is likely unused in the containing type
   |
   = help: consider removing `T`, referring to it in a field, or using a marker such as `PhantomData`
   = help: if you intended `T` to be a const parameter, use `const T: /* Type */` instead

error[E0282]: type annotations needed
  --> tests/pass/generics.rs:35:1
   |
35 | / pomelo! {
36 | |     %module AA;
37 | |     %parser struct Parser<T> { };
38 | |     input ::=;
39 | | }
   | |_^ cannot infer type
   |
   = note: this error originates in the macro `$crate::pomelo_impl` which comes from the expansion of the macro `pomelo` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0282]: type annotations needed
  --> tests/pass/generics.rs:35:1
   |
35 | / pomelo! {
36 | |     %module AA;
37 | |     %parser struct Parser<T> { };
38 | |     input ::=;
39 | | }
   | |_^ cannot infer type
   |
   = note: this error originates in the derive macro `Clone` which comes from the expansion of the macro `pomelo` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0282]: type annotations needed
  --> tests/pass/generics.rs:41:1
   |
41 | / pomelo! {
42 | |     %module BB;
43 | |     %token enum Token<T>{ };
44 | |     input ::=;
45 | | }
   | |_^ cannot infer type
   |
   = note: this error originates in the macro `$crate::pomelo_impl` which comes from the expansion of the macro `pomelo` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0282]: type annotations needed
  --> tests/pass/generics.rs:41:1
   |
41 | / pomelo! {
42 | |     %module BB;
43 | |     %token enum Token<T>{ };
44 | |     input ::=;
45 | | }
   | |_^ cannot infer type
   |
   = note: this error originates in the derive macro `Clone` which comes from the expansion of the macro `pomelo` (in Nightly builds, run with -Z macro-backtrace for more info)

Some errors have detailed explanations: E0282, E0392.
For more information about an error, try `rustc --explain E0282`.
error: could not compile `pomelo` (test "general") due to 33 previous errors
