diff options
-rw-r--r-- | Types.cpp | 4 | ||||
-rw-r--r-- | Types.h | 1 |
2 files changed, 3 insertions, 2 deletions
@@ -52,7 +52,7 @@ shared_ptr<Type const> Type::fromElementaryTypeName(Token::Value _typeToken) else if (_typeToken == Token::ADDRESS) return make_shared<IntegerType const>(0, IntegerType::Modifier::ADDRESS); else if (_typeToken == Token::BOOL) - return shared_ptr<BoolType const>(); + return make_shared<BoolType const>(); else BOOST_THROW_EXCEPTION(InternalCompilerError() << errinfo_comment("Unable to convert elementary typename " + std::string(Token::toString(_typeToken)) + " to type.")); @@ -87,7 +87,7 @@ shared_ptr<Type const> Type::forLiteral(Literal const& _literal) { case Token::TRUE_LITERAL: case Token::FALSE_LITERAL: - return shared_ptr<BoolType const>(); + return make_shared<BoolType const>(); case Token::NUMBER: return IntegerType::smallestTypeForLiteral(_literal.getValue()); case Token::STRING_LITERAL: @@ -184,6 +184,7 @@ private: class BoolType: public Type { public: + explicit BoolType() {} virtual Category getCategory() const { return Category::BOOL; } virtual bool isExplicitlyConvertibleTo(Type const& _convertTo) const override; virtual bool acceptsBinaryOperator(Token::Value _operator) const override |