Output of gcc -fdump-tree-original

Posted by Job on Stack Overflow See other posts from Stack Overflow or by Job
Published on 2010-04-21T17:23:01Z Indexed on 2010/04/24 0:23 UTC
Read the original article Hit count: 463

Filed under:
|
|
|

If I dump the code generated by GCC for a virtual destructor (with -fdump-tree-original), I get something like this:

;; Function virtual Foo::~Foo() (null)
;; enabled by -tree-original

{
  <<cleanup_point <<< Unknown tree: expr_stmt
  (void) (((struct Foo *) this)->_vptr.Foo = &_ZTV3Foo + 8) >>>
>>;
}
<D.20148>:;
if ((bool) (__in_chrg & 1))
  {
    <<cleanup_point <<< Unknown tree: expr_stmt
  operator delete ((void *) this) >>>
>>;
  }

My question is: where is the code after "<D.20148>:;" located? It is outside of the destructor so when is this code executed?

© Stack Overflow or respective owner

Related posts about c++

Related posts about gcc