[PATCH] D18584: Complete support for C++ Core Guidelines Type.6: Always initialize a member variable.

Michael Miller via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 18 11:45:03 PDT 2016

michael_miller added a comment.

In http://reviews.llvm.org/D18584#403872, @alexfh wrote:

> FYI, the check has started crashing after this patch. I'll try to provide a minimal test case soon. The relevant part of the stack trace is:
>   @     0x7fc9c255efa0          8  clang::Stmt::getLocStart()
>   @     0x7fc9c48fdac1         64  clang::tidy::cppcoreguidelines::(anonymous namespace)::IntializerInsertion::getLocation()
>   @     0x7fc9c49026d5       1696  clang::tidy::cppcoreguidelines::ProTypeMemberInitCheck::checkMissingBaseClassInitializer()
>   @     0x7fc9c490424f         96  clang::tidy::cppcoreguidelines::ProTypeMemberInitCheck::check()

Hmm... I can get this to crash in that location but only if I run with -fdelayed-template-parsing. I've got an easy fix and test case if that's the same issue you're running into. We should move the check at line 307 into ProTypeMemberInitCheck::check before both checks. I've got a test case I can add to cppcoreguidelines-pro-type-member-init-delayed.cpp that reproduces it. Let me know if I should write up a patch for this.



More information about the cfe-commits mailing list