<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </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 --- - clang-analyzer 273 crash with CPP file"
   href="http://llvm.org/bugs/show_bug.cgi?id=15703">15703</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>clang-analyzer 273 crash with CPP file
          </td>
        </tr>

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

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Macintosh
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>MacOS X
          </td>
        </tr>

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

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

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

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

        <tr>
          <th>Assignee</th>
          <td>kremenek@apple.com
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>puurtuur@me.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvmbugs@cs.uiuc.edu
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=10323" name="attach_10323" title="Xcode Transcript (invocation and stacktrace)">attachment 10323</a> <a href="attachment.cgi?id=10323&action=edit" title="Xcode Transcript (invocation and stacktrace)">[details]</a></span>
Xcode Transcript (invocation and stacktrace)

I'm running the new v273 analyser in Xcode and got 2 distinct problems, this is
the first. A failed assert. See 3 attached files.

Snip from first file for context:

Assertion failed: (T->isIntegerType() || Loc::isLocType(T)), function
getAPSIntType, file
/Volumes/Data/Users/kremenek/checker-build/checker-273-src/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h,
line 96.0
clang             0x000000010092fe48 llvm::sys::PrintStackTrace(__sFILE*) + 401
clang             0x00000001009303b4 SignalHandler(int) + 5642
libsystem_c.dylib 0x00007fff8f5cf94a _sigtramp + 263
libsystem_c.dylib 000000000000000000 _sigtramp + 18897323044
clang             0x0000000100930166 abort + 225
clang             0x0000000100930141 __assert_rtn + 816
clang             0x0000000101529e92
clang::ento::BasicValueFactory::getAPSIntType(clang::QualType) const + 3387
clang             0x00000001015425e2
clang::ento::SimpleConstraintManager::assumeSymRel(llvm::IntrusiveRefCntPtr<clang::ento::ProgramState
const>, clang::ento::SymExpr const*, clang::BinaryOperatorKind, llvm::APSInt
const&) + 988
clang             0x000000010154235a
clang::ento::SimpleConstraintManager::assumeAux(llvm::IntrusiveRefCntPtr<clang::ento::ProgramState
const>, clang::ento::NonLoc, bool) + 14669
clang             0x00000001015419a5
clang::ento::SimpleConstraintManager::assume(llvm::IntrusiveRefCntPtr<clang::ento::ProgramState
const>, clang::ento::NonLoc, bool) + 8510
clang             0x00000001015418ca
clang::ento::SimpleConstraintManager::assume(llvm::IntrusiveRefCntPtr<clang::ento::ProgramState
const>, clang::ento::DefinedSVal, bool) + 9011
clang             0x00000001014f7d24
clang::ento::ConstraintManager::assumeDual(llvm::IntrusiveRefCntPtr<clang::ento::ProgramState
const>, clang::ento::DefinedSVal) + 8412
clang             0x00000001014f3592
clang::ento::ProgramState::assume(clang::ento::DefinedOrUnknownSVal) const +
11413
clang             0x00000001014ee5f1
clang::ento::ExprEngine::evalEagerlyAssumeBinOpBifurcation(clang::ento::ExplodedNodeSet&,
clang::ento::ExplodedNodeSet&, clang::Expr const*) + 40114
clang             0x00000001014ecb22 clang::ento::ExprEngine::Visit(clang::Stmt
const*, clang::ento::ExplodedNode*, clang::ento::ExplodedNodeSet&) + 822615
clang             0x00000001014e94b9
clang::ento::ExprEngine::ProcessStmt(clang::CFGStmt,
clang::ento::ExplodedNode*) + 80916
clang             0x00000001014e0209
clang::ento::CoreEngine::HandlePostStmt(clang::CFGBlock const*, unsigned int,
clang::ento::ExplodedNode*) + 13717
clang             0x00000001014dfc75
clang::ento::CoreEngine::dispatchWorkItem(clang::ento::ExplodedNode*,
clang::ProgramPoint, clang::ento::WorkListUnit const&) + 38918
...etc</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>