coder3101 / protols

Language Server for protocol buffers
MIT License
46 stars 2 forks source link

reserved "field_name" incorrectly reports as error #11

Closed coder3101 closed 3 months ago

coder3101 commented 3 months ago

Reserved fields show as syntax error:

syntax = "proto3";

package test;

message Foo {
    reserved 1;
    reserved "baz"; // shows as syntax error
    int bar = 2;
}

despite reported tree-sitter AST not contains any error nodes.

(source_file ; [0, 0] - [9, 0]
  (syntax) ; [0, 0] - [0, 18]
  (package ; [2, 0] - [2, 13]
    (full_ident ; [2, 8] - [2, 12]
      (identifier))) ; [2, 8] - [2, 12]
  (message ; [4, 0] - [8, 1]
    (message_name ; [4, 8] - [4, 11]
      (identifier)) ; [4, 8] - [4, 11]
    (message_body ; [4, 12] - [8, 1]
      (reserved ; [5, 1] - [5, 12]
        (ranges ; [5, 10] - [5, 11]
          (range ; [5, 10] - [5, 11]
            (int_lit ; [5, 10] - [5, 11]
              (decimal_lit))))) ; [5, 10] - [5, 11]
      (reserved ; [6, 1] - [6, 16]
        (field_names ; [6, 10] - [6, 15]
          (string))) ; [6, 10] - [6, 15]
      (field ; [7, 1] - [7, 13]
        (type ; [7, 1] - [7, 4]
          (message_or_enum_type ; [7, 1] - [7, 4]
            (identifier))) ; [7, 1] - [7, 4]
        (identifier) ; [7, 5] - [7, 8]
        (field_number ; [7, 11] - [7, 12]
          (int_lit ; [7, 11] - [7, 12]
            (decimal_lit))))))) ; [7, 11] - [7, 12]