I agree in general but this function has multiple exit points and using a local means you have to remember to assign ```m_bShouldAnalyze``` the value of the local before returning. If someone new adds a new exit point without assigning the local to the member variable then that's an easy way to make a new bug. It would be better if the caller took the return value of initialize() and set m_bShouldAnalyze but the structure of the analyzers doesn't lend itself well to that.