My top level advice was going to be pass --hints:off on the command line, and 
    
    
    {.hints:on.}
    #...usercode you'd like to get [Performance] hints for
    {.pop.}
    
    
    Run

but that doesn't actually work. let me see if i can explain
    
    
    {.push hints:off.}
    import parseopt
    {.pop.}
    #this only disables hints for any code compiled at module import
    #i.e. in general this will do nothing, as code only gets compiled when it's 
used
    
    {.push hints:off.}
    var p = initOptParser()
    {.pop.}
    #if hints are on when initOptParser is instantiated, that causes
    # parseCmdLine from os.nim to be compiled, which generates the
    # [Performance] hint you see.  so to disable the os.nim hints,
    # hints have to be off at this point in user code
    
    {.push hints:off.}
    p.next()
    {.pop.}
    #this line causes "next" from parseopt.nim to be compiled,
    # so again, if hints are on at this point, the [Performance]
    # hints from parseopt.nim will be shown
    
    
    Run

It's worth pointing out that this has never worked, but has become much more 
noticeable as gc:arc has made a lot of stdlib code raise [Performance] or 
[ObservableStores] hints/warnings

a way to disable hints per-import would clearly be a useful feature, and/or 
refactoring the stdlib to prevent the warnings from occurring, but I'm not sure 
what the workaround is until then.

so, i'm not sure what to tell you, sorry.

Reply via email to