mirror of git://gcc.gnu.org/git/gcc.git
functional_hash.h: Add specializations for __intN types.
* include/bits/functional_hash.h: Add specializations for __intN types. * include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp (__gnu_pbds): Guard against values that might exceed size_t's precision. From-SVN: r226117
This commit is contained in:
parent
5a5062b8db
commit
8161e0c343
|
|
@ -1,3 +1,11 @@
|
||||||
|
2015-07-23 DJ Delorie <dj@redhat.com>
|
||||||
|
|
||||||
|
* include/bits/functional_hash.h: Add specializations for __intN
|
||||||
|
types.
|
||||||
|
|
||||||
|
* include/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp (__gnu_pbds):
|
||||||
|
Guard against values that might exceed size_t's precision.
|
||||||
|
|
||||||
2015-07-20 Jason Merrill <jason@redhat.com>
|
2015-07-20 Jason Merrill <jason@redhat.com>
|
||||||
|
|
||||||
* include/bits/c++config: Fix abi_tag in special modes.
|
* include/bits/c++config: Fix abi_tag in special modes.
|
||||||
|
|
|
||||||
|
|
@ -121,6 +121,23 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||||
/// Explicit specialization for unsigned long long.
|
/// Explicit specialization for unsigned long long.
|
||||||
_Cxx_hashtable_define_trivial_hash(unsigned long long)
|
_Cxx_hashtable_define_trivial_hash(unsigned long long)
|
||||||
|
|
||||||
|
#ifdef __GLIBCXX_TYPE_INT_N_0
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_0)
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_0 unsigned)
|
||||||
|
#endif
|
||||||
|
#ifdef __GLIBCXX_TYPE_INT_N_1
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_1)
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_1 unsigned)
|
||||||
|
#endif
|
||||||
|
#ifdef __GLIBCXX_TYPE_INT_N_2
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_2)
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_2 unsigned)
|
||||||
|
#endif
|
||||||
|
#ifdef __GLIBCXX_TYPE_INT_N_3
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_3)
|
||||||
|
_Cxx_hashtable_define_trivial_hash(__GLIBCXX_TYPE_INT_N_3 unsigned)
|
||||||
|
#endif
|
||||||
|
|
||||||
#undef _Cxx_hashtable_define_trivial_hash
|
#undef _Cxx_hashtable_define_trivial_hash
|
||||||
|
|
||||||
struct _Hash_impl
|
struct _Hash_impl
|
||||||
|
|
|
||||||
|
|
@ -270,18 +270,24 @@ namespace __gnu_pbds
|
||||||
/* 21 */ 15126ul,
|
/* 21 */ 15126ul,
|
||||||
/* 22 */ 24476ul,
|
/* 22 */ 24476ul,
|
||||||
/* 23 */ 39602ul,
|
/* 23 */ 39602ul,
|
||||||
/* 24 */ 64079ul,
|
/* 24 */ 64079ul
|
||||||
|
#if __SIZE_MAX__ > 0xfffful
|
||||||
|
,
|
||||||
/* 25 */ 103681ul,
|
/* 25 */ 103681ul,
|
||||||
/* 26 */ 167761ul,
|
/* 26 */ 167761ul,
|
||||||
/* 27 */ 271442ul,
|
/* 27 */ 271442ul,
|
||||||
/* 28 */ 439204ul,
|
/* 28 */ 439204ul,
|
||||||
/* 29 */ 710646ul,
|
/* 29 */ 710646ul
|
||||||
|
#if __SIZE_MAX__ > 0xffffful
|
||||||
|
,
|
||||||
/* 30 */ 1149851ul,
|
/* 30 */ 1149851ul,
|
||||||
/* 31 */ 1860497ul,
|
/* 31 */ 1860497ul,
|
||||||
/* 32 */ 3010349ul,
|
/* 32 */ 3010349ul,
|
||||||
/* 33 */ 4870846ul,
|
/* 33 */ 4870846ul,
|
||||||
/* 34 */ 7881196ul,
|
/* 34 */ 7881196ul,
|
||||||
/* 35 */ 12752042ul,
|
/* 35 */ 12752042ul
|
||||||
|
#if __SIZE_MAX__ > 0xfffffful
|
||||||
|
,
|
||||||
/* 36 */ 20633239ul,
|
/* 36 */ 20633239ul,
|
||||||
/* 37 */ 33385282ul,
|
/* 37 */ 33385282ul,
|
||||||
/* 38 */ 54018521ul,
|
/* 38 */ 54018521ul,
|
||||||
|
|
@ -294,6 +300,9 @@ namespace __gnu_pbds
|
||||||
/* 45 */ 1568397607ul,
|
/* 45 */ 1568397607ul,
|
||||||
/* 46 */ 2537720636ul,
|
/* 46 */ 2537720636ul,
|
||||||
/* 47 */ 4106118243ul
|
/* 47 */ 4106118243ul
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
/* Pot's good, let's play */
|
/* Pot's good, let's play */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue