1#pragma once
2
3#if __cplusplus >= 201703L
4extern int abs (int __x) throw()  __attribute__ ((__const__)) ;
5extern long int labs (long int __x) throw() __attribute__ ((__const__)) ;
6extern float fabs (float __x) throw() __attribute__ ((__const__)) ;
7#else
8extern int abs (int __x) __attribute__ ((__const__)) ;
9extern long int labs (long int __x) __attribute__ ((__const__)) ;
10extern float fabs (float __x) __attribute__ ((__const__)) ;
11#endif
12
13namespace std
14{
15
16using ::abs;
17
18inline long
19abs(long __i) { return __builtin_labs(__i); }
20
21inline long long
22abs(long long __x) { return __builtin_llabs (__x); }
23}
24