summaryrefslogtreecommitdiffstats
path: root/libcxx/include/ext/hash_set
Commit message (Collapse)AuthorAgeFilesLines
* Change default bucket count in hash_set/hash_map.Eric Fiselier2019-08-011-4/+2
| | | | | | | | | | | Previously these types rehashed to a table of 193 elements upon construction. But this is non-ideal, first because default constructors should not allocate unless necessary, and second because 193 is big and can waste a bunch of memory. This number had previously been chosen to match GCC's implementation. llvm-svn: 367605
* Remove `using namespace std;` in __gnu_cxx namespace.Eric Fiselier2019-05-171-14/+13
| | | | | | | | The `using namespace std;` opens us up to ambiguity when any of the std:: names are also present in the global namespace. Instead we should properly qualify names we use from std::. llvm-svn: 361074
* Update more file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
| | | | | | | | | | | | | | | | | | to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648
* Remove usages of _LIBCPP_MSVC which is never definedEric Fiselier2017-05-101-1/+1
| | | | llvm-svn: 302736
* Refer to _LIBCPP_MSVC macro where applicableSaleem Abdulrasool2017-02-061-1/+1
| | | | | | | | | Replace preprocess conditions of defined(_MSC_VER) && !defined(__clang__) with defined(_LIBCPP_MSVC). NFC. Patch by Dave Lee! llvm-svn: 294171
* [NFC] Rename _LIBCPP_TYPE_VIS_ONLY to _LIBCPP_TEMPLATE_VISEric Fiselier2017-01-041-2/+2
| | | | | | | | | | | | | The name _LIBCPP_TYPE_VIS_ONLY is no longer accurate because both _LIBCPP_TYPE_VIS and _LIBCPP_TYPE_VIS_ONLY expand to __attribute__((__type_visibility__)) with Clang. The only remaining difference is that _LIBCPP_TYPE_VIS_ONLY can be applied to templates whereas _LIBCPP_TYPE_VIS cannot (due to dllimport/dllexport not being allowed on templates). This patch renames _LIBCPP_TYPE_VIS_ONLY to _LIBCPP_TEMPLATE_VIS. llvm-svn: 291035
* Cleanup: move visibility/linkage attributes to the first declaration.Evgeniy Stepanov2016-04-221-2/+4
| | | | | | http://reviews.llvm.org/D15404 llvm-svn: 267093
* G M: Provides the _LIBCPP_WARNING macro, to be used for MSVC only, since ↵Howard Hinnant2013-10-041-1/+5
| | | | | | that compiler doesn't support #warning. llvm-svn: 191980
* Nico Rieck: this patch series fixes visibility issues on Windows as ↵Howard Hinnant2013-08-121-2/+2
| | | | | | explained in <http://lists.cs.uiuc.edu/pipermail/cfe-dev/2013-August/031214.html>. llvm-svn: 188192
* No functionality change at this time. I've split _LIBCPP_VISIBLE up into ↵Howard Hinnant2013-03-061-2/+2
| | | | | | two flags: _LIBCPP_TYPE_VIS and _LIBCPP_FUNC_VIS. This is in preparation for taking advantage of clang's new __type_visibility__ attribute. llvm-svn: 176593
* Add a new hash class in __gnu_ext for the extension containers. ThereAlexis Hunt2011-07-291-1/+2
| | | | | | | | | | | | | | are two motivations for this. First, this allows users who are specializing __gnu_ext::hash to continue doing so without changing their code. Second, SGI specifies hash overloads for char* and const char* that perform a hash of the string, not of the pointer. In order to support this, the hashing code for string is factored out. llvm-svn: 136539
* Add two missing members from the extension hash containers. The first isAlexis Hunt2011-07-291-0/+4
| | | | | | | | | | | | | | | | the type name 'data_type', which is specified by the SGI spec as being the correct type name for the mapped type. The second is an overload of insert found in standard containers, taking an iterator as a 'hint' (which we ignore in the standard containers as well). libstdc++'s implementation includes these overloads, and they are needed to make insert_iterator work (which I suspect is the real motivation for including them in the standard containers). The motivation for including these overloads of insert and leaving the mapped_type typedef is to make it easier for clients to migrate to the standard containers. llvm-svn: 136538
* http://llvm.org/bugs/show_bug.cgi?id=10469Howard Hinnant2011-07-241-0/+2
| | | | llvm-svn: 135897
* _STD -> _VSTD to avoid macro clash on windowsHoward Hinnant2011-06-301-3/+3
| | | | llvm-svn: 134190
* license changeHoward Hinnant2010-11-161-2/+2
| | | | llvm-svn: 119395
* visibility-decoration.Howard Hinnant2010-09-211-8/+60
| | | | llvm-svn: 114486
* Wiped out some non-ascii characters that snuck into the copyright.Howard Hinnant2010-05-111-1/+1
| | | | llvm-svn: 103516
* libcxx initial importHoward Hinnant2010-05-111-0/+598
llvm-svn: 103490
OpenPOWER on IntegriCloud