c++: constantness of call to function pointer [PR111703]
[official-gcc.git] / gcc / testsuite / g++.dg / torture / pr101256.C
blob973a8b4caf34b28fe5f10cd27cbd1ea0248e48b9
1 // { dg-do run }
3 template<class T> 
4 const T& max(const T& a, const T& b)
6     return (a < b) ? b : a;
9 signed char var_5 = -128;
10 unsigned int var_11 = 2144479212U;
11 unsigned long long int arr [22];
13 void
14 __attribute__((noipa))
15 test(signed char var_5, unsigned var_11) {
16   for (short i_61 = 0; i_61 < var_5 + 149; i_61 += 10000)
17     arr[i_61] = max((signed char)0, var_5) ? max((signed char)1, var_5) : var_11;
20 int main() {
21   for (int i_0 = 0; i_0 < 22; ++i_0) 
22       arr [i_0] = 11834725929543695741ULL;
24   test(var_5, var_11);
25   if (arr [0] != 2144479212ULL && arr [0] != 11834725929543695741ULL)
26     __builtin_abort ();
27   return 0;