@@ -765,6 +765,28 @@ TEST_F(test_parse_expression, invalid_dot_expression) {
765
765
error_missing_property_name_for_dot_operator, dot,
766
766
offsets_matcher (p.code (), strlen (u8" x. ? y" ), u8" ." ))));
767
767
}
768
+
769
+ {
770
+ test_parser p (u8" x.;" _sv);
771
+ expression* ast = p.parse_expression ();
772
+ EXPECT_EQ (summarize (ast), " dot(var x, )" );
773
+ EXPECT_THAT (p.errors (),
774
+ ElementsAre (ERROR_TYPE_FIELD (
775
+ error_missing_property_name_for_dot_operator, dot,
776
+ offsets_matcher (p.code (), strlen (u8" x" ), u8" ." ))));
777
+ }
778
+ {
779
+ test_parser p (u8" .;" _sv);
780
+ expression* ast = p.parse_expression ();
781
+ EXPECT_EQ (summarize (ast), " dot(?, )" );
782
+ EXPECT_THAT (
783
+ p.errors (),
784
+ ElementsAre (
785
+ ERROR_TYPE_FIELD (error_missing_operand_for_operator, where,
786
+ offsets_matcher (p.code (), 0 , u8" ." )),
787
+ ERROR_TYPE_FIELD (error_missing_property_name_for_dot_operator, dot,
788
+ offsets_matcher (p.code (), 0 , u8" ." ))));
789
+ }
768
790
}
769
791
770
792
TEST_F (test_parse_expression, parse_optional_dot_expressions) {
0 commit comments