From 953e92b6f53ffee90cac3a79828a668cf1a55435 Mon Sep 17 00:00:00 2001 From: RJ Catalano Date: Mon, 7 Mar 2016 12:29:41 -0600 Subject: added from identifier or keyword handling of fixed types --- libsolidity/parsing/Token.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'libsolidity/parsing/Token.h') diff --git a/libsolidity/parsing/Token.h b/libsolidity/parsing/Token.h index 59b5e520..c81e4210 100644 --- a/libsolidity/parsing/Token.h +++ b/libsolidity/parsing/Token.h @@ -305,10 +305,11 @@ public: static std::tuple fromIdentifierOrKeyword(std::string const& _literal); private: - // extractM provides a safe way to extract numbers, - // if out_of_range error is thrown, they returns 0s, therefore securing - // the variable's identity as an identifier. - static unsigned extractM(std::string const& _literal); + // extractUnsigned provides a safe way to extract numbers, + // the variable's identity as an identifier. If an invalid conversion + // error is thrown (usually in the case of grabbing N from a fixed type) + // then a 1 is thrown to purposely ensure that it will declare itself as an identifier + static unsigned extractUnsigned(std::string const& _literal); // @returns the keyword with name @a _name or Token::Identifier of no such keyword exists. static Token::Value keywordByName(std::string const& _name); static char const* const m_name[NUM_TOKENS]; -- cgit v1.2.3