[PATCH] D39239: [AST] Incorrectly qualified unscoped enumeration as template actual parameter.

Carlos Alberto Enciso via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 25 07:35:20 PDT 2017


CarlosAlbertoEnciso added a comment.

In https://reviews.llvm.org/D39239#905641, @probinson wrote:

> Have you tried this change against the GDB and LLDB test suites?  If they have failures then we should think about whether those tests are over-specific or whether we should put this under a tuning option.


I double check the LLDB test suite and there are 3 cases that fail with this patch. But the DWARF generated is correct, as the template name is encoded correctly:

  DW_TAG_compile_unit "main.cpp"
    DW_AT_producer "clang version 6.0.0 (trunk 316571)"
    DW_AT_comp_dir "/home/carlos/llvm-root/llvm/tools/lldb/packages/Python/lldbsuite/test/lang/cpp/template"
    ...
    DW_TAG_enumeration_type "EnumType"
      DW_AT_enum_class DW_FORM_flag_present
      DW_TAG_enumerator "Member"
      DW_TAG_enumerator "Subclass"
      ...
    DW_TAG_class_type "EnumTemplate<EnumType::Member>"
      ...
    DW_TAG_class_type "EnumTemplate<EnumType::Subclass>"
      ...

I will investigate the issue, as the test case should pass as it does not use unscope enums, which is what the patch should affect.


https://reviews.llvm.org/D39239





More information about the cfe-commits mailing list