------- Comment #5 from mmitchel at gcc dot gnu dot org 2005-10-19 20:11 ------- If you don't want to fix this in the middle-end, the right way to handle this is in the C++ gimplifier.
At that point, create a COMPOUND_EXPR whose second argument is "*((T*) 0)" for non-pointer types, or just "((T *) 0)" for pointer/reference types. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24439