forked from OSchip/llvm-project
Fix uninitialized variable in GoParser
Summary: `m_last_tok` isn't initialized anywhere before it's used the first time (most likely in the `GoParser::Rule::error` method), which causes most of the GoParser tests to fail with sanitizers enabled with errors like this: ``` GoParser.cpp:52:21: runtime error: load of value <random value>, which is not a valid value for type 'GoLexer::TokenType' UndefinedBehaviorSanitizer: undefined-behavior GoParser.cpp:52:21 ``` Reviewers: ribrdb, davide, labath Reviewed By: labath Subscribers: labath, lldb-commits Differential Revision: https://reviews.llvm.org/D42339 llvm-svn: 323119
This commit is contained in:
parent
da15b5b116
commit
57f9b363c1
|
@ -67,7 +67,9 @@ private:
|
||||||
size_t m_pos;
|
size_t m_pos;
|
||||||
};
|
};
|
||||||
|
|
||||||
GoParser::GoParser(const char *src) : m_lexer(src), m_pos(0), m_failed(false) {}
|
GoParser::GoParser(const char *src)
|
||||||
|
: m_lexer(src), m_pos(0), m_last_tok(GoLexer::TOK_INVALID),
|
||||||
|
m_failed(false) {}
|
||||||
|
|
||||||
GoASTStmt *GoParser::Statement() {
|
GoASTStmt *GoParser::Statement() {
|
||||||
Rule r("Statement", this);
|
Rule r("Statement", this);
|
||||||
|
|
Loading…
Reference in New Issue