http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46448
--- Comment #3 from Salvatore Filippone <sfilippone at uniroma2 dot it> 2010-12-31 22:52:03 UTC --- (In reply to comment #2) > I think you should check whether the symbol is already there using the "gsym" > (assuming that -fwhole-file is used - but I think that can be assumed ;-). > > There should be only one such function per translation unit; it should use > everywhere the same decl (UID) and - of course - it should be not exported > ('static') such that you can have the same function in multiple translation > units. (Which is ugly - best would be to have only once per program, but I > think the .mod file is emitted before the CLASS is encountered.) I just discovered that changing the order of some USE statements in one intermediate module makes the extra __copy symbol disappear. While it's a nice workaround, it's a bit suspicious.....