[Bug middle-end/19661] unnecessary atexit calls emitted for static objects with empty destructors

2005-01-27 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-28 01:22 --- This is related to PR 17736 which is for empty global variables with empty constructors. -- What|Removed |Added -

[Bug middle-end/19661] unnecessary atexit calls emitted for static objects with empty destructors

2005-01-27 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-28 01:45 --- But it is still an enhancement because any missed optimization that does not happen before is. Also this is a middle-end bug since the middle-end and not the front-end figure out that the function is empt

[Bug middle-end/19661] unnecessary atexit calls emitted for static objects with empty destructors

2005-01-28 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-28 18:53 --- (In reply to comment #5) > I'll move this bug back to the C++ component. Consider the following C++ code: struct Foo { ~Foo() {} int i; }; struct A { Foo foo[2]; }; void foo () { static A a; } We don'

[Bug middle-end/19661] unnecessary atexit calls emitted for static objects with empty destructors

2005-01-28 Thread bangerth at dealii dot org
--- Additional Comments From bangerth at dealii dot org 2005-01-28 19:11 --- Why do you think the front-end doesn't know that the destructor is empty? It sees its definition, and it knows about potential destructors of member objects and base classes, so it should have all the informat