Ishmeet
Ishmeet

Reputation: 1610

Why is lint giving a warning ineffectual assignment to (ineffassign)

Getting a lint warning ineffectual assignment to "cfg" at line cfg := &utils.Config{}. Why is that ?

    cfg := &utils.Config{}
    env := os.Getenv("TEST")
    if strings.EqualFold(env, "INT") {
        cfg = utils.GetIntConfig()
    } else {
        cfg = utils.GetConfig()
    }

    cgw.Cgw(cfg)

Upvotes: 41

Views: 80280

Answers (1)

Burak Serdar
Burak Serdar

Reputation: 51632

After the following if statement, cfg is written, thus the value assigned to cfg using cfg := &utils.Config{} is never used. You are using an assignment where a declaration would do.

var cfg *utils.Config
...

Upvotes: 49

Related Questions