improvements to distinguishing between function decls vs variable decls