<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 --- - ICE in clang::ento::SValBuilder::evalCast"
   href="http://llvm.org/bugs/show_bug.cgi?id=16690">16690</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>ICE in clang::ento::SValBuilder::evalCast
          </td>
        </tr>

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

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

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

        <tr>
          <th>OS</th>
          <td>Linux
          </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>mrmocool@gmx.de
          </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=10918" name="attach_10918" title="reduced test case">attachment 10918</a> <a href="attachment.cgi?id=10918&action=edit" title="reduced test case">[details]</a></span>
reduced test case

$ clang -v
clang version 3.4 (trunk 186982)
Target: x86_64-unknown-linux-gnu
Thread model: posix
$ clang++ -c -std=c++11 -w reduced.cpp
$ clang++ -cc1 -analyze -analyzer-checker=cplusplus -w -std=c++11
-fcxx-exceptions reduced.cpp
clang++: llvm/tools/clang/lib/StaticAnalyzer/Core/SValBuilder.cpp:415:
clang::ento::SVal clang::ento::SValBuilder::evalCast(clang::ento::SVal,
clang::QualType, clang::QualType): Assertion `val.getAs<Loc>()' failed.
0  clang++         0x0000000001cc1ca5 llvm::sys::PrintStackTrace(_IO_FILE*) +
37
1  clang++         0x0000000001cc20f3
2  libpthread.so.0 0x00007f236dd7fcb0
3  libc.so.6       0x00007f236cdc6425 gsignal + 53
4  libc.so.6       0x00007f236cdc9b8b abort + 379
5  libc.so.6       0x00007f236cdbf0ee
6  libc.so.6       0x00007f236cdbf192
7  clang++         0x0000000000e84d8b
clang::ento::SValBuilder::evalCast(clang::ento::SVal, clang::QualType,
clang::QualType) + 2603
8  clang++         0x0000000000e4012a
clang::ento::ExprEngine::VisitCast(clang::CastExpr const*, clang::Expr const*,
clang::ento::ExplodedNode*, clang::ento::ExplodedNodeSet&) + 1258
9  clang++         0x0000000000e31301
clang::ento::ExprEngine::Visit(clang::Stmt const*, clang::ento::ExplodedNode*,
clang::ento::ExplodedNodeSet&) + 6833
10 clang++         0x0000000000e2e061
clang::ento::ExprEngine::ProcessStmt(clang::CFGStmt,
clang::ento::ExplodedNode*) + 849
11 clang++         0x0000000000e2dc9d
clang::ento::ExprEngine::processCFGElement(clang::CFGElement,
clang::ento::ExplodedNode*, unsigned int, clang::ento::NodeBuilderContext*) +
205
12 clang++         0x0000000000e240c3
clang::ento::CoreEngine::HandlePostStmt(clang::CFGBlock const*, unsigned int,
clang::ento::ExplodedNode*) + 147
13 clang++         0x0000000000e23a1f
clang::ento::CoreEngine::dispatchWorkItem(clang::ento::ExplodedNode*,
clang::ProgramPoint, clang::ento::WorkListUnit const&) + 111
14 clang++         0x0000000000e235e3
clang::ento::CoreEngine::ExecuteWorkList(clang::LocationContext const*,
unsigned int, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>) + 563
15 clang++         0x0000000000d276f3
16 clang++         0x0000000000d26da8
17 clang++         0x0000000000d24355
18 clang++         0x000000000093ad73 clang::ParseAST(clang::Sema&, bool, bool)
+ 531
19 clang++         0x0000000000653990 clang::FrontendAction::Execute() + 112
20 clang++         0x00000000006320ad
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 925
21 clang++         0x00000000006187cc
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 2956
22 clang++         0x000000000060f9a2 cc1_main(char const**, char const**, char
const*, void*) + 594
23 clang++         0x000000000061660a main + 9642
24 libc.so.6       0x00007f236cdb176d __libc_start_main + 237
25 clang++         0x000000000060f671
Stack dump:
0.    Program arguments: clang++ -cc1 -analyze -analyzer-checker=cplusplus -w
-std=c++11 -fcxx-exceptions reduced.cpp 
1.    <eof> parser at end of file
2.    While analyzing stack: 
    #0 void foo(const string &, const string &, vector<string> &vlist)
3.    reduced.cpp:139:5: Error evaluating statement
4.    reduced.cpp:139:5: Error evaluating statement
Aborted (core dumped)</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>