------- Comment #6 from jakub at gcc dot gnu dot org 2008-09-03 08:12 ------- There is nothing strange about it, it is just a bug that needs to be fixed, and is caused by the design decision that the sharing status of implicitly determined is computed during the gimplification phase, but synthetization of method invokes the gimplifier too. I guess the best fix would be to start defering all mark_used calls for the duration of finish_function and at the end of finish_function call all the queued mark_used calls.
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37189