OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.dg/] [warn/] [Wnvdtor-2.C] - Blame information for rev 338

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 301 jeremybenn
// PR c++/7302
2
// { dg-do compile }
3
// { dg-options "-Wnon-virtual-dtor" }
4
 
5
// Warn when a class has virtual functions and accessible non-virtual
6
// destructor, in which case it would be possible but unsafe to delete
7
// an instance of a derived class through a pointer to the base class.
8
 
9
struct A
10
{ // { dg-bogus "non-virtual destructor" }
11
protected:
12
  ~A();
13
public:
14
  virtual void f() = 0;
15
};
16
 
17
struct B
18
{ // { dg-bogus "non-virtual destructor" }
19
private:
20
  ~B();
21
public:
22
  virtual void f() = 0;
23
};
24
 
25
struct C
26
{ // { dg-warning "non-virtual destructor" }
27
  virtual void f() = 0;
28
};
29
 
30
struct D
31
{ // { dg-warning "non-virtual destructor" }
32
  ~D();
33
  virtual void f() = 0;
34
};
35
 
36
struct E;
37
 
38
struct F
39
{ // { dg-warning "non-virtual destructor" }
40
protected:
41
  friend class E;
42
  ~F();
43
public:
44
  virtual void f() = 0;
45
};
46
 
47
struct G
48
{ // { dg-warning "non-virtual destructor" }
49
private:
50
  friend class E;
51
  ~G();
52
public:
53
  virtual void f() = 0;
54
};

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.