From ced136a3a4ab28821d6b4d2e9f5a5ba75456ca3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonathan=20M=C3=BCller?= Date: Fri, 10 Nov 2017 13:07:22 +0100 Subject: [PATCH] Fix comma in attributes on enum value --- src/libclang/cxtokenizer.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libclang/cxtokenizer.cpp b/src/libclang/cxtokenizer.cpp index c2d7cc3..5ee8035 100644 --- a/src/libclang/cxtokenizer.cpp +++ b/src/libclang/cxtokenizer.cpp @@ -266,12 +266,12 @@ namespace while (!token_after_is(tu, file, cur, end, ";")) end = get_next_location(tu, file, end); } - else if (kind == CXCursor_EnumConstantDecl && !token_after_is(tu, file, cur, end, ",") - && !token_after_is(tu, file, cur, end, ";")) + else if (kind == CXCursor_EnumConstantDecl && !token_after_is(tu, file, cur, end, ",")) { - while (!token_after_is(tu, file, cur, end, ",") - && !token_after_is(tu, file, cur, end, ";")) - end = get_next_location(tu, file, end); + // need to support attributes + // just give up and extend the range to the range of the entire enum... + auto parent = clang_getCursorLexicalParent(cur); + end = clang_getRangeEnd(clang_getCursorExtent(parent)); } else if (kind == CXCursor_FieldDecl || kind == CXCursor_ParmDecl || kind == CXCursor_NonTypeTemplateParameter