<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Assertion failure at clang/lib/Basic/SourceManager.cpp:1370 in SrcMgr::CharacteristicKind clang::SourceManager::getFileCharacteristic(clang::SourceLocation) const: Loc.isValid() && "Can't get file characteristic of invalid loc!""
   href="https://bugs.llvm.org/show_bug.cgi?id=41239">41239</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Assertion failure at clang/lib/Basic/SourceManager.cpp:1370 in SrcMgr::CharacteristicKind clang::SourceManager::getFileCharacteristic(clang::SourceLocation) const: Loc.isValid() && "Can't get file characteristic of invalid loc!"
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>clang
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Static Analyzer
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>noqnoqneo@gmail.com
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>alexfh@google.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>dcoughlin@apple.com, llvm-bugs@lists.llvm.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>$ cat /tmp/q.c
struct s {
  char *ss;
};
void g(struct s *d) {
  if (d->ss) {
  }
  f(d);
  bcmp(d->ss, "", 4);
}
int f(struct s *str) {}
$ clang-tidy -checks=-*,clang-analyzer* /tmp/q.c --
assert.h assertion failed at clang/lib/Basic/SourceManager.cpp:1370 in
SrcMgr::CharacteristicKind
clang::SourceManager::getFileCharacteristic(clang::SourceLocation) const:
Loc.isValid() && "Can't get file characteristic of invalid loc!"
    @     0x55f75bd2e926  __assert_fail
    @     0x55f75b94cb88  clang::SourceManager::getFileCharacteristic()
    @     0x55f75a37c677  (anonymous
namespace)::NoStoreFuncVisitor::VisitNode()
    @     0x55f75a35f388  generateVisitorsDiagnostics()
    @     0x55f75a35a855  clang::ento::GRBugReporter::generatePathDiagnostics()
    @     0x55f75a35c8eb 
clang::ento::BugReporter::generateDiagnosticForConsumerMap()
    @     0x55f75a3570fb  clang::ento::BugReporter::FlushReport()
    @     0x55f75a35639b  clang::ento::BugReporter::FlushReports()
    @     0x55f75a0f6c30  (anonymous namespace)::AnalysisConsumer::HandleCode()
    @     0x55f75a0e0673  (anonymous
namespace)::AnalysisConsumer::HandleTranslationUnit()
    @     0x55f75a716e0c  clang::MultiplexConsumer::HandleTranslationUnit()
    @     0x55f75a886dd4  clang::ParseAST()
    @     0x55f75a6f7593  clang::FrontendAction::Execute()
    @     0x55f75a6905d1  clang::CompilerInstance::ExecuteAction()
    @     0x55f75a5fba01 
clang::tooling::FrontendActionFactory::runInvocation()
    @     0x55f759d2f817 
clang::tidy::runClangTidy()::ActionFactory::runInvocation()
    @     0x55f75a5fb76a  clang::tooling::ToolInvocation::runInvocation()
    @     0x55f75a5fb0e6  clang::tooling::ToolInvocation::run()
    @     0x55f75a5fd9d2  clang::tooling::ClangTool::run()
    @     0x55f759d2a9b1  clang::tidy::runClangTidy()</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>