<html>
<head>
<base href="https://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-cl crash with increment within if-statement"
href="https://llvm.org/bugs/show_bug.cgi?id=28585">28585</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>clang-cl crash with increment within if-statement
</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>Windows NT
</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>Driver
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedclangbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>drivehappy@gmail.com
</td>
</tr>
<tr>
<th>CC</th>
<td>llvm-bugs@lists.llvm.org
</td>
</tr>
<tr>
<th>Classification</th>
<td>Unclassified
</td>
</tr></table>
<p>
<div>
<pre>Created <span class=""><a href="attachment.cgi?id=16753" name="attach_16753" title="Reproduce source file and provided minidump dump file">attachment 16753</a> <a href="attachment.cgi?id=16753&action=edit" title="Reproduce source file and provided minidump dump file">[details]</a></span>
Reproduce source file and provided minidump dump file
This is running 64-bit clang-cl from the latest build (listed on
llvm.org/builds dated June 27, 2016). I don't have current access to my linux
box, so I'm not sure if this affects clang itself (I assume it does).
Narrowed down the reproduce case:
void foo() {
if (++s == 0);
}
Results in the expected error (use of undeclared identifier 's'), but also a
crash (I've attached the dump file to this report):
c:\Users\markh\Desktop>clang-cl clang_cl_crash.cpp
clang_cl_crash.cpp(2,8) : error: use of undeclared identifier 's'
if (++s == 0);
^
Wrote crash dump file
"C:\Users\markh\AppData\Local\Temp\clang-cl.exe-f1741e.dmp"
0x00007FF7E7C79979 (0x000034AD5C29E6E8 0x0000000000000001 0x0000000000000000
0x00000178675AA920)
0x00007FF7E76E9C01 (0x00000178675AA930 0x00007FF7E6763D8F 0x00000178675A7EF0
0x0000017869087A98)
0x00007FF7E7263203 (0x00000178674E29DF 0x00000178674E29E0 0x0000017867555400
0x00007FF7E7E18FF2)
0x00007FF7E725F8C3 (0xAAAAAAAAAAAAAAAB 0x00000178675AA930 0x000001786750BE60
0x00007FF7E7E5B021)
0x00007FF7E725F1C1 (0x00000178675AE580 0x00007FF7E7BECEEF 0x0000017867554800
0x00000022CDD8C620)
0x00007FF7E7267C90 (0x00000022CDD8CDB0 0x00007FF7E75575C6 0x0000000000000000
0x0000000000000000)
0x00007FF7E7268761 (0x00000178675AE570 0x0000000000000024 0x0000000000000810
0x00000178675AE570)
0x00007FF7E71E4C68 (0x0000000000000002 0x0000000000000000 0x00000178674B0000
0x0000000000000804)
0x00007FF7E7240609 (0x0000000000000000 0x000000000000000F 0x00000178674E29D0
0x0000000000000004)
0x00007FF7E71E3CBC (0x0000000000002A20 0x0000017869082AAE 0x000001786750BE60
0x00007FF7E7E14CD8)
0x00007FF7E71E35B9 (0x00007FF7E8B60DBD 0x000000000000000D 0x000034AD5C29E6E8
0x0000017867555730)
0x00007FF7E71E1F24 (0x0000017800000000 0x0000017800000000 0x0000017800000000
0x00007FF7E71DE21C)
0x00007FF7E71E10D9 (0x0000017867506220 0x0000017867508EE0 0x00000178674C32F0
0x00000178674BEC00)
0x00007FF7E71DDAB7 (0x0000000000000000 0x0000000000000000 0x00000178674E2A00
0x00000178674BF2E0)
0x00007FF7E6BD1139 (0x0000000000000005 0x00007FF7E874BE73 0x0000000000000004
0x0000017800000013)
0x00007FF7E6B81EE1 (0x0000000000000028 0x0000017867505390 0x000000000000021D
0x0000000000000000)
0x00007FF7E6C179A8 (0x000000DB00010001 0x0000000000000001 0x0000000000000268
0x0000000000000001)
0x00007FF7E5216648 (0x00000178674E0BB8 0x0000000000000000 0x00000022CDD8E584
0x00000022CDD8E580)
0x00007FF7E5214609 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000)
0x00007FF7E7FDECD4 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000)
0x00007FFECD488BE4 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000), BaseThreadInitThunk() + 0x14 bytes(s)
0x00007FFECFE32E01 (0x0000000000000000 0x0000000000000000 0x0000000000000000
0x0000000000000000), RtlUserThreadStart() + 0x21 bytes(s)
clang-cl.exe: error: clang frontend command failed due to signal (use -v to see
invocation)
clang version 3.9.0 (trunk)
Target: x86_64-pc-windows-msvc
Thread model: posix
InstalledDir: C:\Program Files\LLVM\bin
clang-cl.exe: note: diagnostic msg: PLEASE submit a bug report to
<a href="http://llvm.org/bugs/">http://llvm.org/bugs/</a> and include the crash backtrace, preprocessed source, and
associated run script.
clang-cl.exe: note: diagnostic msg:
********************</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>