------- Comment #8 from redi at gcc dot gnu dot org 2010-04-19 09:54 ------- (In reply to comment #3) > At the very least, you'd agree that it's a performance bug to be copying bytes > from memory when the class is empty. At the severe use-case, it breaks > existing code.
As far as I can see, this can only break invalid code. The original testcase is definitely invalid, there is no object of type empty_t at address 0, that is true whether it is an empty class or not. I agree it's a missed optimization, but not a correctness issue -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43787