C++ 分析ANTLR CPP语法中常量减速的输入时出错

C++ 分析ANTLR CPP语法中常量减速的输入时出错,c++,antlr,antlr4,grammar,lexer,C++,Antlr,Antlr4,Grammar,Lexer,我正在使用下面的ANTLR语法来解析我的代码 但是我在下面的代码中遇到了一个解析错误 const GstTensorsInfo info_in = { .num_tensors = 1U, .info = {{ .name = NULL, .type = _NNS_UINT8, .dimension = { 1, 10, 1, 1}}}, }; 我正在为CPP解析器使用以下输入: TEST(tensor_filter_custom_easy, in

我正在使用下面的ANTLR语法来解析我的代码

但是我在下面的代码中遇到了一个解析错误

const GstTensorsInfo info_in = {
        .num_tensors = 1U,
        .info = {{ .name = NULL, .type = _NNS_UINT8, .dimension = { 1, 10, 1, 1}}},
      };
我正在为CPP解析器使用以下输入:

TEST(tensor_filter_custom_easy, in_code_func_01)
    {
      int ret;
      const guint num_buffers = 10;
      TestOption option = { num_buffers, TEST_CUSTOM_EASY_ICF_01 };
      guint timeout_id;
    
      const GstTensorsInfo info_in = {
        .num_tensors = 1U,
        .info = {{ .name = NULL, .type = _NNS_UINT8, .dimension = { 1, 10, 1, 1}}},
      };
      
      ret = NNS_custom_easy_register ("safe_memcpy_10x10", cef_func_safe_memcpy,
          NULL, &info_in, &info_out);
      ASSERT_EQ(ret, 0);
    }
解析器/词法分析器中需要进行哪些修改才能正确解析输入?非常感谢您在这方面的任何帮助。在C++ 20中,只添加到C++中(<<代码> .NUMYTAN = 1U/<代码>)。您尝试使用的语法名为“CPP14”,我想这意味着它是一种C++14语法。在这种情况下,它不接受语法也就不足为奇了


您可能会在C语法中找到一些有用的东西,因为自C99以来,指定的初始值设定项一直是C的一部分。

您能与我分享C++20语法的链接吗?@anand:我不知道Antlr的C++20语法。很抱歉