diff --git a/modcc/lexer.cpp b/modcc/lexer.cpp index b15513a93690006e4696839fd9e158fa356c6419..448beb74d1a2a9e1005c7f01cc39f0c8fd72979f 100644 --- a/modcc/lexer.cpp +++ b/modcc/lexer.cpp @@ -263,7 +263,7 @@ Token Lexer::number() { } else if(!uses_scientific_notation && (c=='e' || c=='E')) { if(is_numeric(current_[1]) || - is_plusminus(current_[1]) && is_numeric(current_[2])) + (is_plusminus(current_[1]) && is_numeric(current_[2]))) { uses_scientific_notation++; str += c; diff --git a/tests/modcc/test_parser.cpp b/tests/modcc/test_parser.cpp index ab25d942dd5c6165b61bfd4940454ac840b9f993..59d085dee710b14cd49ed17310320db92d285e49 100644 --- a/tests/modcc/test_parser.cpp +++ b/tests/modcc/test_parser.cpp @@ -354,7 +354,7 @@ TEST(Parser, parse_stoich_expression) { for (auto& text: single_expr) { std::unique_ptr<StoichExpression> s; EXPECT_TRUE(check_parse(s, &Parser::parse_stoich_expression, text)); - EXPECT_EQ(1, s->terms().size()); + EXPECT_EQ(1u, s->terms().size()); } const char* double_expr[] = { @@ -364,7 +364,7 @@ TEST(Parser, parse_stoich_expression) { for (auto& text: double_expr) { std::unique_ptr<StoichExpression> s; EXPECT_TRUE(check_parse(s, &Parser::parse_stoich_expression, text)); - EXPECT_EQ(2, s->terms().size()); + EXPECT_EQ(2u, s->terms().size()); } const char* other_good_expr[] = { @@ -380,7 +380,7 @@ TEST(Parser, parse_stoich_expression) { { std::unique_ptr<StoichExpression> s; EXPECT_TRUE(check_parse(s, &Parser::parse_stoich_expression, check_coeff)); - EXPECT_EQ(4, s->terms().size()); + EXPECT_EQ(4u, s->terms().size()); std::vector<int> confirm = {-3,2,-1,1}; for (unsigned i = 0; i<4; ++i) { auto term = s->terms()[i]->is_stoich_term(); @@ -439,19 +439,19 @@ TEST(Parser, parse_conserve) { ASSERT_TRUE(check_parse(s, &Parser::parse_conserve_expression, text)); EXPECT_TRUE(s->rhs()->is_number()); ASSERT_TRUE(s->lhs()->is_stoich()); - EXPECT_EQ(2, s->lhs()->is_stoich()->terms().size()); + EXPECT_EQ(2u, s->lhs()->is_stoich()->terms().size()); text = "CONSERVE a = 1.23e-2"; ASSERT_TRUE(check_parse(s, &Parser::parse_conserve_expression, text)); EXPECT_TRUE(s->rhs()->is_number()); ASSERT_TRUE(s->lhs()->is_stoich()); - EXPECT_EQ(1, s->lhs()->is_stoich()->terms().size()); + EXPECT_EQ(1u, s->lhs()->is_stoich()->terms().size()); text = "CONSERVE = 0"; ASSERT_TRUE(check_parse(s, &Parser::parse_conserve_expression, text)); EXPECT_TRUE(s->rhs()->is_number()); ASSERT_TRUE(s->lhs()->is_stoich()); - EXPECT_EQ(0, s->lhs()->is_stoich()->terms().size()); + EXPECT_EQ(0u, s->lhs()->is_stoich()->terms().size()); text = "CONSERVE -2a + b -c = foo*2.3-bar"; ASSERT_TRUE(check_parse(s, &Parser::parse_conserve_expression, text)); @@ -459,7 +459,7 @@ TEST(Parser, parse_conserve) { ASSERT_TRUE(s->lhs()->is_stoich()); { auto& terms = s->lhs()->is_stoich()->terms(); - ASSERT_EQ(3, terms.size()); + ASSERT_EQ(3u, terms.size()); auto coeff = terms[0]->is_stoich_term()->coeff()->is_integer(); ASSERT_TRUE(coeff); EXPECT_EQ(-2, coeff->integer_value());