https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67529
DJ Delorie <dj at redhat dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dj at redhat dot com --- Comment #5 from DJ Delorie <dj at redhat dot com> --- I tested this with rx-elf-g++ 6.0 (trunk) and it has the relevent vtables in it, and at that jsr it jumps to MyTemplate::check() (at least, in the simulator). That's using your linker script. You can add -Wl,-Map,test.map to generate a link map, and look for _ZTV10MyTemplate to see what the linker does with it. For example, it might be a bug in linker garbage collection, or the interim object files (or *.s if you -save-temps) might not have them, etc.