Opened 6 years ago
Closed 6 years ago
#12343 closed Bugs (fixed)
int128_t to int64_t cast error with apple clang
| Reported by: | Owned by: | John Maddock | |
|---|---|---|---|
| Milestone: | Boost 1.62.0 | Component: | multiprecision |
| Version: | Boost 1.61.0 | Severity: | Showstopper |
| Keywords: | Cc: |
Description
#include <boost/multiprecision/cpp_int.hpp>
#include <iostream>
#include <cstdint>
int main()
{
boost::multiprecision::int128_t a = INT64_MIN;
std::cout << a << " "
<< INT64_MIN << " "
<< static_cast<int64_t>(a) << " "
<< std::endl;
return 0;
}
With apple clang (xcode 7.3.1): "clang++ -stdlib=libc++ -std=c++14 int128casterror.cpp -I/usr/local/include" the output is -9223372036854775808 -9223372036854775808 -9223372036854775807 , while the correct output should be (http://ideone.com/3UhgWQ): -9223372036854775808 -9223372036854775808 -9223372036854775808
Change History (1)
comment:1 by , 6 years ago
| Milestone: | To Be Determined → Boost 1.62.0 |
|---|---|
| Resolution: | → fixed |
| Status: | new → closed |
Note:
See TracTickets
for help on using tickets.

Thanks, fixed in https://github.com/boostorg/multiprecision/commit/9f43e1c88ecc0b746962ba8024aacc2b37b4650b