summaryrefslogtreecommitdiffstats
path: root/contrib/libstdc++
Commit message (Collapse)AuthorAgeFilesLines
* MFC r268993, r268893, r268994, plus partial r264070, r264082ian2014-08-101-2/+2
| | | | | | | | Fix C++ exception handling for ARM EABI. Just the part of r264070 that creates the FBSD_1.4 namespace in libc is hand-applied, and then r264082 which creates the Versions.def entry is MFC'd.
* MFC: r265090marius2014-05-021-1/+1
| | | | | | | | | | | | | | | Merge r133175 from upstream: 2008-03-13 Dennis Czeremin <dennis.czeremin@smiths-heimann.com> PR libstdc++/35566 * include/bits/stl_multimap.h (multimap<>::multimap(_InputIterator, _InputIterator)): Forward to _M_insert_equal, not _M_insert_unique. This patch was GPL2 at the time and fixes a regression introduced with the merge of GCC r129013 in FreeBSD r236829. Sponsored by: Bally Wulff Games & Entertainment GmbH
* MFC r263774:dim2014-03-291-0/+11
| | | | | | | | Revert r263694, and apply a better fix to squelch unnecessary warnings from clang about possible keywords being treated as identifiers for the remainder of the translation unit (a.k.a. -Wkeyword-compat), when using libstdc++ in combination with -Wsystem-headers. This will not only fix devd, but any C++ program using libstdc++.
* MFC r258017, r258429, r258748, r258817:pfg2013-12-219-55/+78
| | | | | | | | Merge updates from FSF pre4.3 GCC inspired on Apple's gcc: Updates to libiberty and mangling. New align attribute. Merge Apple updates to libstdc++.
* MFC rr258501, r258507;pfg2013-12-151-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc: Bring updates from Google's enhanced gcc-4.2.1. Google released and enhanced version of gcc-4.2.1 plus their local patches for Android[1]. The patches are owned by Google and the license hasn't been changed from the original GPLv2. We are only bringing a subset of the available patches that may be helpful in FreeBSD, in other words, changes specific to android are not included. From the README.google file[1]. Patches applied to google_vendor_src_branch/gcc/gcc-4.2.1: gcc/Makefile.in gcc/c-common.c gcc/c-common.h gcc/c-opts.c gcc/c-typeck.c gcc/cp/typeck.c gcc/doc/invoke.texi gcc/flags.h gcc/opts.c gcc/tree-flow.h gcc/tree-ssa-alias-warnings.c gcc/tree-ssa-alias.c Backport of -Wstrict-aliasing from mainline. Silvius Rus <rus@google.com> gcc/coverage.c: Patch coverage_checksum_string for PR 25351. Seongbae Park <spark@google.com> Not yet submitted to FSF. gcc/c-opts.c gcc/c-ppoutput.c gcc/c.opt gcc/doc/cppopts.texi libcpp/Makefile.in libcpp/directives-only.c libcpp/directives.c libcpp/files.c libcpp/include/cpplib.h libcpp/init.c libcpp/internal.h libcpp/macro.c Support for -fdirectives-only. Ollie Wild <aaw@google.com>. Submitted to FSF but not yet approved. libstdc++-v3/include/ext/hashtable.h http://b/742065 http://b/629994 Reduce min size of hashtable for hash_map, hash_set from 53 to 5 libstdc++-v3/include/ext/hashtable.h http://b/629994 Do not iterate over buckets if hashtable is empty. gcc/common.opt gcc/doc/invoke.texi gcc/flags.h gcc/gimplify.c gcc/opts.c Add Saito's patch for -finstrument-functions-exclude-* options. gcc/common.opt gcc/doc/invoke.texi gcc/final.c gcc/flags.h gcc/opts.c gcc/testsuite/gcc.dg/Wframe-larger-than.c Add a new flag -Wframe-larger-than- which enables a new warning when a frame size of a function is larger than specified. This patch hasn't been integrated into gcc mainline yet. gcc/tree-vrp.c Add a hack to avoid using ivopts information for pointers starting at constant values. Reference: [1] https://android.googlesource.com/toolchain/gcc/+/master/gcc-4.2.1/ Obtained from: Google Inc.
* Add isnan() and isinf() to the global namespace in libstdc++'s <cmath>.theraven2013-07-231-0/+2
| | | | | | | | | | The standard (n3242, section 17.6.1.1, paragraph 4) says that, because these are declared as macros in the C specification (even though they are implemented as functions in the C++ library) they should be in the global namespace. A surprising number of configure checks rely on this. It was broken by recent cleanups to math.h.
* Make libsupc++'s __cxa_call_terminate() prototype consistent with thedim2013-06-291-1/+1
| | | | | | | definition. Submitted by: dt71@gmx.com MFC after: 3 days
* Allow the unwind functions int libgcc_s to interact correctly with libthr.andrew2013-02-041-9/+11
| | | | | | | | | | | | | | | | | | | _Unwind_ForcedUnwind in libgcc_s takes as one of it's parameters a stop function to tell it when to stop unwinding. One of the stop function's parameters is a _Unwind_Exception_Class. On most architectures this is an int64_t, however on ARM EABI the gcc developers have made this a char array with 8 items. While both of these take the same space they are passed into the stop function differently, an int64_t is passed in in registers r2 and r3, while the char[8] is passed in as a pointer to the first item in register r2. Because libthr expects the value to be an int64_t we would get incorrect results when it passes a function that take an int64_t but libgcc passes in a pointer to a char array including crashing. The fix is to update libgcc_s to make it pass an int64_t to the stop function and to libstdc++ as it expects _Unwind_Exception_Class to be an array.
* Fix the __glibcxx_min and __glibcxx_max macros for a signed wchar_t.andrew2012-12-251-2/+3
| | | | | | * The __glibcxx_max macro came from GCC svn r138078, the last GPLv2 revision of this file. * I wrote the updated __glibcxx_min macro.
* Fix a number of other clang warnings in libstdc++, which could appeardim2012-10-236-23/+29
| | | | | | | | when building other C++ software with it. Also fix one actual bug in libsupc++, which was exposed by such a warning. This latter fix is the only functional change. MFC after: 1 week
* Fix several clang warnings in libstdc++, which were exposed by thedim2012-10-236-34/+44
| | | | | | | recent atf import. These changes are purely cosmetic, no functional change. MFC after: 1 week
* Bring a couple of libstdc++ patches from Apple's llvm-gcc project.pfg2012-06-1010-42/+111
| | | | | | | | | | | | | | | Modified Fri Jul 10 07:44:34 2009 CDT by rafael backport part of http://gcc.gnu.org/ml/gcc-cvs/2007-10/msg00118.html The patch is for libstdc++ and it was GPL2 at the time. Modified Tue Apr 29 01:20:19 2008 CDT by asl Backport from mainline (pre-GPLv3). Fix for sizeof(const void*) > sizeof(unsigned long). Approved by: jhb (mentor) MFC after: 2 weeks
* Undo the earlier revert of the ABI change in libsupc++. On further discussion,theraven2012-03-301-6/+6
| | | | | | posting an errata notice with 9.1 is the less painful solution. Approved by: dim (mentor)
* Revert ABI breakage in libsupc++.theraven2012-03-231-6/+6
| | | | | | | | | | | | | Unfortunately, the ABI was broken upstream for the 4.2 release, which we imported. We then shipped the broken version for several years and certain ports (e.g. libobjc2) depend on it, so we're stuck with it for now... We should revisit this for 10.0, since we're allowed to break the ABI then, but until then we should keep the ABI we shipped with 8.x and 9.x. Reviewed by: kan Approved by: dim (mentor) MFC after: 1 week
* Add explicit braces to avoid dangling else in stl_tree.h. This silencesdim2012-03-191-4/+6
| | | | | | | | | | | | the following warning produced by clang trunk: In file included from /usr/src/sbin/devd/devd.cc:91: In file included from /usr/obj/usr/src/tmp/usr/include/c++/4.2/map:64: /usr/obj/usr/src/tmp/usr/include/c++/4.2/bits/stl_tree.h:987:2: error: add explicit braces to avoid dangling else [-Werror,-Wdangling-else] else ^ MFC after: 3 days
* Update libstdc++ with small updates from the latest rev. (135556)pfg2011-12-2115-49/+201
| | | | | | | | | | | | | | from the gcc 4.2 branch. The libraries in the gcc-4_2-branch remained under the LGPLv2. The changes can be reproduced with the following command: svn diff svn://gcc.gnu.org/svn/gcc/branches/gcc-4_2-branch/libstdc++-v3 -r 127959:135556 Reviewed by: mm Approved by: jhb (mentor) MFC after: 2 weeks
* Make it possible to use the debug versions of std::map and std::multimapdim2011-12-072-4/+0
| | | | | | | | | | | | | | | | | with clang, by removing two unneeded using declarations. Otherwise, you would get errors similar to: /usr/include/c++/4.2/debug/map.h:77:20: error: dependent using declaration resolved to type without 'typename' using _Base::value_compare; ^ N.B.: Take care when you actually use the debug versions of any libstdc++ header. They are more likely to contain problems, because they are exercised far less often, and since the standard library complexity guarantees don't always apply anymore, compile times can drastically increase. MFC after: 2 weeks
* Upgrade of base gcc and libstdc++ to the last GPLv2-licensed revisionmm2011-03-293-2/+21
| | | | | | | | | | | | | | | | | | | (rev. 127959 of gcc-4_2-branch). Resolved GCC bugs: c++: 17763, 29365, 30535, 30917, 31337, 31941, 32108, 32112, 32346, 32898, 32992 debug: 32610, 32914 libstdc++: 33084, 33128 middle-end: 32563 rtl-optimization: 33148 tree-optimization: 25413, 32723 target: 32218 Tested by: pointyhat (miwi) Obtained from: gcc (gcc-4_2-branch up to rev. 127959) PR: gnu/153298, gnu/153959, gnu/154385 MFC after: 1 month
* Some fixes so we can build libstdc++ with clang:rpaulo2010-08-243-8/+10
| | | | | | | | | | | o Make the value_type, vector_type, iterator, __mutex_type types of free_list class so we can access them o In some cases template keywords must be inserted to treat classes as dependent template names o Remove two 'inline' keywords where they do not make sense Submitted by: Dimitry Andric <dimitry at andric.com> Reviewed by: trema
* This commit was generated by cvs2svn to compensate for changes in r171827,kan2007-08-1413-185/+493
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * GCC 4.2.1 release C++ standard library and runtime support code.kan2007-08-1413-185/+493
| |
| * Remove files that are no more part of GCC distribution from FSF branch.kan2007-05-1942-58164/+0
| |
* | This commit was generated by cvs2svn to compensate for changes in r169708,kan2007-05-1942-58164/+0
| | | | | | | | which included commits to RCS files with non-trunk default branches.
* | This commit was generated by cvs2svn to compensate for changes in r169691,kan2007-05-19849-38160/+187253
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * GCC 4.2.0 release C++ standard library and runtime support code.kan2007-05-19849-38160/+187253
| |
| * MFS: Remove file that was disappeared from gcc distribution.delphij2006-09-301-2789/+0
| | | | | | | | | | | | While I'm there, add the file into ObsoleteFiles.inc. Approved by: maintainer (kan)
* | This commit was generated by cvs2svn to compensate for changes in r162837,delphij2006-09-301-2789/+0
| | | | | | | | which included commits to RCS files with non-trunk default branches.
* | This commit was generated by cvs2svn to compensate for changes in r161653,kan2006-08-265-43/+106
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.4.6 C++ support bits (as of 2006/08/25 #116475).kan2006-08-265-43/+106
| |
* | This commit was generated by cvs2svn to compensate for changes in r146897,kan2005-06-0368-30405/+64538
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.4.4 C++ support bits.kan2005-06-0368-30405/+64538
| |
| * Remove files that are not part of GCC 3.4.x from the vendor branch.kan2004-08-12220-53658/+0
| |
* | This commit was generated by cvs2svn to compensate for changes in r133582,kan2004-08-1222-9581/+0
| | | | | | | | which included commits to RCS files with non-trunk default branches.
* | This commit was generated by cvs2svn to compensate for changes in r132720,kan2004-07-28435-54149/+156575
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.4.2 20040728 C++ support bits.kan2004-07-28435-54149/+156575
| |
| * Remove bits which are not part of GCC 3.3.x anymore.kan2004-01-05151-20517/+0
| |
* | This commit was generated by cvs2svn to compensate for changes in r124154,kan2004-01-05151-20517/+0
| | | | | | | | which included commits to RCS files with non-trunk default branches.
* | This commit was generated by cvs2svn to compensate for changes in r122182,kan2003-11-0718-157/+281
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.3.3 20031106 C++ support bits.kan2003-11-0718-157/+281
| |
* | This commit was generated by cvs2svn to compensate for changes in r119258,kan2003-08-229-61/+9466
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.3.1-release C++ support bits.kan2003-08-229-61/+9466
| |
* | This commit was generated by cvs2svn to compensate for changes in r117397,kan2003-07-11220-12208/+51201
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.3.1-pre 2003-07-11 C++ support bits.kan2003-07-11220-12208/+51201
| |
* | This commit was generated by cvs2svn to compensate for changes in r110614,kan2003-02-1040-2066/+2923
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.2.2-release C++ support bits.kan2003-02-1040-2066/+2923
| |
* | This commit was generated by cvs2svn to compensate for changes in r107606,obrien2002-12-0445-489/+1256
|\ \ | |/ | | | | which included commits to RCS files with non-trunk default branches.
| * Gcc 3.2.1 release virgin vendor import. (19-Nov-2002)obrien2002-12-0449-574/+1730
| |
* | Remove files no longer part of the gcc_3_2_anoncvs_20021009 libstdc++.obrien2002-11-27199-43706/+0
|/ | | | Approved by: re(jhb)
* Gcc 3.2.1-prerelease C++ support bits from the FSF anoncvs repo ↵kan2002-10-1010-56/+176
| | | | gcc-3_2-branch on October 9th 2002 20:15 EST.
* Gcc 3.2.1-prerelease C++ support bits from the FSF anoncvs repo ↵kan2002-09-1743-1632/+8571
| | | | gcc-3_2-branch on 16-Sep-2002 13:23:11 EDT.
OpenPOWER on IntegriCloud