aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.bugs/900220_02.C
blob: cf039f646bf3b034e4106d06085705980645c979 (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
// g++ 1.36.1 bug 900220_02

// g++ treats plain `char' and `unsigned char' as different types, however
// it fails to treat `signed char' as being a different type from plain
// `char' as called for by both the ANSI C standard and the C++ reference
// manual.

// keywords: plain char type, signed char type, unsigned char type, overloading

void overloaded (char) {
}

void overloaded (signed char) {		// gets bogus error
}

void overloaded (unsigned char) {
}

void global_function ()
{
  char c = 0;
  signed char sc = 0;
  unsigned char uc = 0;

  overloaded (c);
  overloaded (sc);
  overloaded (uc);
}

int main () { return 0; }