Besides using a generic, your link is the way to go.
    
    
    proc lf2echo(x: varargs[typed, `$`]) =
      echo x
    
    proc lf2echo(x: varargs[typed]) =
      echo x
    
    Run

Same error for both forms.
    
    
    : invalid type: 'typed' in this context: 'proc (x: varargs[typed])' for proc
    (26, 10) Error: type mismatch: got <varargs[typed]>
    but expected one of:
    proc echo(x: varargs[typed, `$`])
      first type mismatch at position: 1
      required type for x: varargs[typed]
      but expression 'x' is of type: varargs[typed]
    
    
    Run

The way to present echo with the expected 
    
    
    [typed, `$`]
    
    Run

seems to be a macro, quite close to the C va_arg() macro.

Thanks for the exact reference.

Reply via email to