Hi,

I have a problem with 2 macros having the same name not working probably.

So at the moment I have:
    
    
    macro qouteNode*(body: untyped): untyped
    
    
    Run

and
    
    
    macro qouteNodeOp*(op: string, body: untyped): untyped
    
    
    Run

and it works just fine. But if I call both macros `qouteNode`, I get errors.

For a more detailed impression you can have a look at the code: 
<https://github.com/choltreppe/nim_quote_node>

The error message when giving both the same name and runnig tests is:

> quote_nodes/tests/test1.nim(12, 28) Error: type mismatch: got <string, 
> NimNode> but expected one of:
> 
> proc `&`(x, y: string): string
>     first type mismatch at position: 2 required type for y: string but 
> expression 'calc' is of type: NimNode
> proc `&`(x: string; y: char): string
>     first type mismatch at position: 2 required type for y: char but 
> expression 'calc' is of type: NimNode
> proc `&`[T](https://forum.nim-lang.org/postActivity.xml): seq[T]
>     first type mismatch at position: 2 required type for y: seq[T] but 
> expression 'calc' is of type: NimNode
> 
> 4 other mismatching symbols have been suppressed; compile with 
> --showAllMismatches:on to see them

Looking at the error message it think in the case of using `qouteNode*(body: 
untyped)` simply no macro is applied at all ?

Thanks, chol

Reply via email to