OSDN Git Service

bb3d0d8cf10f40394fcea55843bda4356e35628b
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / g++.old-deja / g++.jason / init3.C
1 // PRMS Id: 5652
2 // Bug: strings does not get initialized.
3
4 extern "C" void * memcpy (void *, const void *, __SIZE_TYPE__);
5 extern "C" int strcmp (const char *, const char *);
6
7 class My_string {
8    char *str;
9    int len;
10 public:
11    My_string(const char* string);
12    My_string(const My_string &);
13    ~My_string() { delete str; }
14    char* char_p() { return str; }
15 };
16
17 const My_string strings[4] = {
18    "first string",
19    "second string",
20    "third string",
21    "fourth string"
22 };
23
24 My_string::My_string(const char* string)
25 {
26    len = strlen(string) + 1;
27    str = new char[len];
28    memcpy(str, string, len);
29 }
30
31 My_string::My_string(const My_string &string)
32 {
33    len = string.len;
34    str = new char[len];
35    memcpy(str, string.str, len);
36 }
37
38 main()
39 {
40    My_string str1 = strings[0];
41    return strcmp ("first string", str1.char_p ()) != 0;
42 }