blob: 1c1ad3e306779b6be639c2512973e595dbc0a3cb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
// { dg-do assemble }
// { dg-prune-output "note" }
// Makes bogus x86 assembly code.
#include <iostream>
// The VxWorks kernel-mode headers define a macro named "max", which is not
// ISO-compliant, but is part of the VxWorks API.
#if defined __vxworks && !defined __RTP__
#undef max
#endif
using namespace std;
template<class T>
T max(T a, T b)
{
return (a > b) ? a : b;
}
// Prototypes (enable one or the other)
double max<>(double, double); // { dg-error "" } bogus code
// int max(int, int);
int main()
{
int i = 123;
double d = 1234.5678;
cout.precision(12);
cout << max(d, i) << endl; // { dg-error "" }
cout << max(i, d) << endl; // { dg-error "" }
return 0;
}
|