This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/54686] std::abs (long long) resorts to std::abs (double) if llabs is absent
- From: "paolo.carlini at oracle dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sun, 23 Sep 2012 20:56:51 +0000
- Subject: [Bug target/54686] std::abs (long long) resorts to std::abs (double) if llabs is absent
- Auto-submitted: auto-generated
- References: <bug-54686-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54686
--- Comment #4 from Paolo Carlini <paolo.carlini at oracle dot com> 2012-09-23 20:56:51 UTC ---
Sorry, forgot that <cstdint> only declares some types. Thus, all in all, the
issue is really that <cstdlib> should provide abs (long) and abs (long long)
and it isn't because below it llabs is missing, as you correctly mentioned. But
the main point lives: in the generic bits of the library we can't do much about
that, because <cmath> isn't supposed to treat differently the various integer
types. Really the target maintainers should do something about llabs: note that
adding some code to the SH libstdc++ config should be also fine (without
touching newlib I mean)