@@ -397,7 +397,10 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__streambuf_type* __this_sb = this->rdbuf();
int_type __c = __this_sb->sgetc();
char_type __c2 = traits_type::to_char_type(__c);
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
unsigned long long __gcount = 0;
+#pragma GCC diagnostic pop
while (!traits_type::eq_int_type(__c, __eof)
&& !traits_type::eq_int_type(__c, __idelim)
@@ -1122,6 +1125,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// Inhibit implicit instantiations for required instantiations,
// which are defined via explicit instantiations elsewhere.
#if _GLIBCXX_EXTERN_TEMPLATE
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wc++11-extensions" // extern template
+#pragma GCC diagnostic ignored "-Wlong-long"
extern template class basic_istream<char>;
extern template istream& ws(istream&);
extern template istream& operator>>(istream&, char&);
@@ -1134,8 +1140,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
extern template istream& istream::_M_extract(unsigned long&);
extern template istream& istream::_M_extract(bool&);
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
extern template istream& istream::_M_extract(long long&);
extern template istream& istream::_M_extract(unsigned long long&);
+#pragma GCC diagnostic pop
#endif
extern template istream& istream::_M_extract(float&);
extern template istream& istream::_M_extract(double&);
@@ -1166,6 +1175,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
extern template class basic_iostream<wchar_t>;
#endif
+#pragma GCC diagnostic pop
#endif
_GLIBCXX_END_NAMESPACE_VERSION
@@ -2063,6 +2063,8 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
{ return this->do_get(__in, __end, __io, __err, __v); }
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
iter_type
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, long long& __v) const
@@ -2072,6 +2074,7 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
get(iter_type __in, iter_type __end, ios_base& __io,
ios_base::iostate& __err, unsigned long long& __v) const
{ return this->do_get(__in, __end, __io, __err, __v); }
+#pragma GCC diagnostic pop
#endif
///@}
@@ -2242,6 +2245,8 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
{ return _M_extract_int(__beg, __end, __io, __err, __v); }
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
virtual iter_type
do_get(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, long long& __v) const
@@ -2251,6 +2256,7 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
do_get(iter_type __beg, iter_type __end, ios_base& __io,
ios_base::iostate& __err, unsigned long long& __v) const
{ return _M_extract_int(__beg, __end, __io, __err, __v); }
+#pragma GCC diagnostic pop
#endif
virtual iter_type
@@ -2407,6 +2413,8 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
{ return this->do_put(__s, __io, __fill, __v); }
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
iter_type
put(iter_type __s, ios_base& __io, char_type __fill, long long __v) const
{ return this->do_put(__s, __io, __fill, __v); }
@@ -2415,6 +2423,7 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
put(iter_type __s, ios_base& __io, char_type __fill,
unsigned long long __v) const
{ return this->do_put(__s, __io, __fill, __v); }
+#pragma GCC diagnostic pop
#endif
///@}
@@ -2546,6 +2555,8 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
{ return _M_insert_int(__s, __io, __fill, __v); }
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
virtual iter_type
do_put(iter_type __s, ios_base& __io, char_type __fill,
long long __v) const
@@ -2555,6 +2566,7 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
do_put(iter_type __s, ios_base& __io, char_type __fill,
unsigned long long __v) const
{ return _M_insert_int(__s, __io, __fill, __v); }
+#pragma GCC diagnostic pop
#endif
virtual iter_type
@@ -762,9 +762,12 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
const fmtflags __fmt = __io.flags();
__io.flags((__fmt & ~ios_base::basefield) | ios_base::hex);
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
typedef __gnu_cxx::__conditional_type<(sizeof(void*)
<= sizeof(unsigned long)),
unsigned long, unsigned long long>::__type _UIntPtrType;
+#pragma GCC diagnostic pop
_UIntPtrType __ul;
__beg = _M_extract_int(__beg, __end, __io, __err, __ul);
@@ -1206,9 +1209,12 @@ _GLIBCXX_BEGIN_NAMESPACE_LDBL
| ios_base::uppercase);
__io.flags((__flags & __fmt) | (ios_base::hex | ios_base::showbase));
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
typedef __gnu_cxx::__conditional_type<(sizeof(const void*)
<= sizeof(unsigned long)),
unsigned long, unsigned long long>::__type _UIntPtrType;
+#pragma GCC diagnostic pop
__s = _M_insert_int(__s, __io, __fill,
reinterpret_cast<_UIntPtrType>(__v));
@@ -1679,6 +1679,9 @@ _GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11
// Inhibit implicit instantiations for required instantiations,
// which are defined via explicit instantiations elsewhere.
#if _GLIBCXX_EXTERN_TEMPLATE
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wc++11-extensions" // extern template
+#pragma GCC diagnostic ignored "-Wlong-long"
extern template class moneypunct<char, false>;
extern template class moneypunct<char, true>;
extern template class moneypunct_byname<char, false>;
@@ -1892,6 +1895,7 @@ _GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11
bool
has_facet<messages<wchar_t> >(const locale&);
#endif
+#pragma GCC diagnostic pop
#endif
_GLIBCXX_END_NAMESPACE_VERSION
@@ -361,8 +361,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
extern template ostream& ostream::_M_insert(unsigned long);
extern template ostream& ostream::_M_insert(bool);
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
extern template ostream& ostream::_M_insert(long long);
extern template ostream& ostream::_M_insert(unsigned long long);
+#pragma GCC diagnostic pop
#endif
extern template ostream& ostream::_M_insert(double);
extern template ostream& ostream::_M_insert(long double);
@@ -382,8 +385,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
extern template wostream& wostream::_M_insert(unsigned long);
extern template wostream& wostream::_M_insert(bool);
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
extern template wostream& wostream::_M_insert(long long);
extern template wostream& wostream::_M_insert(unsigned long long);
+#pragma GCC diagnostic pop
#endif
extern template wostream& wostream::_M_insert(double);
extern template wostream& wostream::_M_insert(long double);
@@ -937,6 +937,8 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
__fill_a1(_ForwardIterator __first, _ForwardIterator __last,
const _Tp& __value)
{
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
// We can optimize this loop by moving the load from __value outside
// the loop, but only if we know that making that copy is trivial,
// and the assignment in the loop is also trivial (so that the identity
@@ -951,6 +953,7 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
&& __is_same(_Tp, __typeof__(*__first))
#endif
&& sizeof(_Tp) <= sizeof(long long);
+#pragma GCC diagnostic pop
// When the condition is true, we use a copy of __value,
// otherwise we just use another reference.
@@ -1040,6 +1043,8 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
std::__fill_a(__first, __last, __value);
}
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
// Used by fill_n, generate_n, etc. to convert _Size to an integral type:
inline _GLIBCXX_CONSTEXPR int
__size_to_integer(int __n) { return __n; }
@@ -1089,9 +1094,11 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
__extension__ inline _GLIBCXX_CONSTEXPR long long
__size_to_integer(__float128 __n) { return (long long)__n; }
#endif
+#pragma GCC diagnostic pop
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wc++17-extensions"
+#pragma GCC diagnostic ignored "-Wlong-long"
template<typename _OutputIterator, typename _Size, typename _Tp>
_GLIBCXX20_CONSTEXPR
inline _OutputIterator
@@ -1574,6 +1581,8 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
#if __cplusplus >= 201402L
return std::__bit_width(make_unsigned_t<_Tp>(__n)) - 1;
#else
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
// Use +__n so it promotes to at least int.
return (sizeof(+__n) * __CHAR_BIT__ - 1)
- (sizeof(+__n) == sizeof(long long)
@@ -1581,6 +1590,7 @@ _GLIBCXX_END_NAMESPACE_CONTAINER
: (sizeof(+__n) == sizeof(long)
? __builtin_clzl(+__n)
: __builtin_clz(+__n)));
+#pragma GCC diagnostic pop
#endif
}
@@ -933,7 +933,7 @@ _GLIBCXX_BEGIN_NAMESPACE_CONTAINER
const size_type __len =
_M_check_len(__n, "vector::_M_range_insert");
-#if __cplusplus < 201103LL
+#if __cplusplus < 201103L
if (__len < (__n + (__old_start - __old_finish)))
__builtin_unreachable();
#endif
@@ -217,6 +217,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#endif
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
using ::llabs;
inline lldiv_t
@@ -224,6 +226,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ lldiv_t __q; __q.quot = __n / __d; __q.rem = __n % __d; return __q; }
using ::lldiv;
+#pragma GCC diagnostic pop
#endif
#if _GLIBCXX_USE_C99_LONG_LONG_CHECK || _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
@@ -62,6 +62,8 @@ namespace detail
#endif
};
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
// Originally taken from the SGI implementation; acknowledged in the docs.
// Further modified (for 64 bits) from tr1's hashtable.
static const std::size_t g_a_sizes[num_distinct_sizes] =
@@ -133,6 +135,7 @@ namespace detail
#endif
#endif
};
+#pragma GCC diagnostic pop
} // namespace detail
@@ -439,8 +439,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
_CXX_POINTER_ARITH_OPERATOR_SET(long);
_CXX_POINTER_ARITH_OPERATOR_SET(unsigned long);
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
_CXX_POINTER_ARITH_OPERATOR_SET(long long);
_CXX_POINTER_ARITH_OPERATOR_SET(unsigned long long);
+#pragma GCC diagnostic pop
#endif
// Mathematical Manipulators
@@ -310,10 +310,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#endif
#if _GLIBCXX_EXTERN_TEMPLATE
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wc++11-extensions"
extern template class stdio_sync_filebuf<char>;
#ifdef _GLIBCXX_USE_WCHAR_T
extern template class stdio_sync_filebuf<wchar_t>;
#endif
+#pragma GCC diagnostic pop
#endif
_GLIBCXX_END_NAMESPACE_VERSION
@@ -195,6 +195,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
{ return _M_extract(__n); }
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
__istream_type&
operator>>(long long& __n)
{ return _M_extract(__n); }
@@ -202,6 +204,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__istream_type&
operator>>(unsigned long long& __n)
{ return _M_extract(__n); }
+#pragma GCC diagnostic pop
#endif
///@}
@@ -207,6 +207,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
}
#ifdef _GLIBCXX_USE_LONG_LONG
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
__ostream_type&
operator<<(long long __n)
{ return _M_insert(__n); }
@@ -214,6 +216,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
__ostream_type&
operator<<(unsigned long long __n)
{ return _M_insert(__n); }
+#pragma GCC diagnostic pop
#endif
///@}
@@ -762,6 +762,9 @@ namespace tr1
lgamma(_Tp __x)
{ return __builtin_lgamma(__x); }
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
+
#ifndef __CORRECT_ISO_CPP11_MATH_H_PROTO_FP
inline long long
llrint(float __x)
@@ -793,6 +796,7 @@ namespace tr1
long long>::__type
llround(_Tp __x)
{ return __builtin_llround(__x); }
+#pragma GCC diagnostic pop
#ifndef __CORRECT_ISO_CPP11_MATH_H_PROTO_FP
inline float
@@ -71,19 +71,22 @@ namespace tr1
hash<_Tp>::operator()(_Tp __val) const \
{ return static_cast<size_t>(__val); }
- _TR1_hashtable_define_trivial_hash(bool);
- _TR1_hashtable_define_trivial_hash(char);
- _TR1_hashtable_define_trivial_hash(signed char);
- _TR1_hashtable_define_trivial_hash(unsigned char);
- _TR1_hashtable_define_trivial_hash(wchar_t);
- _TR1_hashtable_define_trivial_hash(short);
- _TR1_hashtable_define_trivial_hash(int);
- _TR1_hashtable_define_trivial_hash(long);
- _TR1_hashtable_define_trivial_hash(long long);
- _TR1_hashtable_define_trivial_hash(unsigned short);
- _TR1_hashtable_define_trivial_hash(unsigned int);
- _TR1_hashtable_define_trivial_hash(unsigned long);
- _TR1_hashtable_define_trivial_hash(unsigned long long);
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
+ _TR1_hashtable_define_trivial_hash(bool)
+ _TR1_hashtable_define_trivial_hash(char)
+ _TR1_hashtable_define_trivial_hash(signed char)
+ _TR1_hashtable_define_trivial_hash(unsigned char)
+ _TR1_hashtable_define_trivial_hash(wchar_t)
+ _TR1_hashtable_define_trivial_hash(short)
+ _TR1_hashtable_define_trivial_hash(int)
+ _TR1_hashtable_define_trivial_hash(long)
+ _TR1_hashtable_define_trivial_hash(long long)
+ _TR1_hashtable_define_trivial_hash(unsigned short)
+ _TR1_hashtable_define_trivial_hash(unsigned int)
+ _TR1_hashtable_define_trivial_hash(unsigned long)
+ _TR1_hashtable_define_trivial_hash(unsigned long long)
+#pragma GCC diagnostic pop
#undef _TR1_hashtable_define_trivial_hash
@@ -135,6 +138,8 @@ namespace tr1
static size_t
hash(const _Tp* __ptr, size_t __clength)
{
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
size_t __result
= static_cast<size_t>(14695981039346656037ULL);
const char* __cptr = reinterpret_cast<const char*>(__ptr);
@@ -144,6 +149,7 @@ namespace tr1
__result *= static_cast<size_t>(1099511628211ULL);
}
return __result;
+#pragma GCC diagnostic pop
}
};
@@ -424,7 +424,7 @@ namespace tr1
namespace
{
_Swallow_assign ignore;
- }; // anonymous namespace
+ } // anonymous namespace
}
_GLIBCXX_END_NAMESPACE_VERSION
@@ -123,8 +123,11 @@ namespace tr1
_DEFINE_SPEC(0, __is_integral_helper, unsigned int, true)
_DEFINE_SPEC(0, __is_integral_helper, long, true)
_DEFINE_SPEC(0, __is_integral_helper, unsigned long, true)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
_DEFINE_SPEC(0, __is_integral_helper, long long, true)
_DEFINE_SPEC(0, __is_integral_helper, unsigned long long, true)
+#pragma GCC diagnostic pop
/// is_integral
template<typename _Tp>
@@ -544,6 +547,8 @@ namespace tr1
: public integral_constant<bool, is_pod<_Tp>::value>
{ };
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wlong-long"
template<typename>
struct __is_signed_helper
: public false_type { };
@@ -567,6 +572,7 @@ namespace tr1
_DEFINE_SPEC(0, __is_unsigned_helper, unsigned int, true)
_DEFINE_SPEC(0, __is_unsigned_helper, unsigned long, true)
_DEFINE_SPEC(0, __is_unsigned_helper, unsigned long long, true)
+#pragma GCC diagnostic pop
template<typename _Tp>
struct is_unsigned