I'm trying to use dynamic_cast to determine whether or not an instance of a class is implementing a certain interface.
when I try to compile this with standard board settings it results in the following error:
error: 'dynamic_cast' not permitted with -fno-rtti
But when I add -frtti to the compile options, and compiling goes great, the linker starts complaining:
Linking it all together ...
"C:\Users\Bas\AppData\Local\arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel
3.5.4-arduino2/bin/avr-g++" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections,--relax -mmcu=atmega2560 -o "C:\Users\Bas\AppData\Local\Temp\VMBuilds\CSense\mega_atmega2560\Debug/CSense.in
o.elf" [..removed rest of command ...]
ccNLxbjy.ltrans1.ltrans.o*: (.rodata+0x10a): undefined reference to vtable for __cxxabiv1::__class_type_info
ccNLxbjy.ltrans1.ltrans.o*: (.rodata+0x186): undefined reference to vtable for __cxxabiv1::__vmi_class_type_info
ccNLxbjy.ltrans1.ltrans.o*: (.rodata+0x19a): undefined reference to vtable for __cxxabiv1::__class_type_info
ccNLxbjy.ltrans1.ltrans.o*: (.rodata+0x19e): undefined reference to vtable for __cxxabiv1::__class_type_info
ccNLxbjy.ltrans1.ltrans.o*: (.rodata+0x1a2): undefined reference to vtable for __cxxabiv1::__si_class_type_info
How can I get rtti enabled ?