Package: libc++1 Version: 3.5-2 Severity: normal Dear Maintainer,
when using libc++1 on a Pentium (i586) machine, it is possible for a program to terminate on "Illegal instruction". The following program can be used to reproduce the issue: #include <sstream> #include <string> int main() { float f; std::istringstream num_stream(std::string("42")); num_stream >> f; return 0; } libc++-dev and at least one of clang or g++ need to be installed to build the test. Compiling the source code from above with clang++-libc++ -march=i586 test.cpp or g++-libc++ -march=i586 test.cpp results in a binary which works correctly on "modern" machines, but terminates with "Illegal instruction" on i586. Running the program in a debugger makes it possible to see that the illegal instruction is in fact a SIMD operation in libc++1, which will also fail on any pre-SIMD i686 processors as well. The same code works fine when compiled with libstdc++. -- System Information: Debian Release: 8.3 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable') Architecture: i386 (i586) Kernel: Linux 3.16.0-4-586 Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages libc++1 depends on: ii libc6 2.19-18+deb8u2 ii multiarch-support 2.19-18+deb8u2 libc++1 recommends no packages. Versions of packages libc++1 suggests: ii clang 1:3.5-25 -- no debconf information