-fno-code enables code generation for too many modules
If you need to enable code generation for -fno-code because of TemplateHaskell, you don't need to enable code generation for the module which uses TemplateHaskell itself.
I have fixed it in !7502 (closed)