github.com/nishanths/predeclared (go): Command predeclared prints the names and locations of declarations in the given packages that have the same name as one of Go's predeclared identifiers (eg., int, string, delete, copy, append).  The command line usage is:  Run 'predeclared' without arguments for help.  The '-q' boolean flag, if set, indicates to the command to check struct field names, interface methods, and method names — in addition to the default checks. (These checks aren't included by default since fields and method are always accessed by a qualifier—à la obj.Field—and hence are less likely to cause confusion when reading code even if they have the same name as a predeclared identifier.)  The '-ignore' string flag can be used to specify predeclared identifiers to not report issues for. For example, to not report overriding of the predeclared identifiers 'new' and 'real', set the flag like so:
Keywords: ast|go|linter