I mean, then you can avoid it in that situation. Or actually use the production version like I explained here: https://news.ycombinator.com/item?id=17505358 Or find another way to use it. It's not all-or-nothing.
Yes that works, but relies on devirtualization in the production code, and isn't at all what you were suggesting before about having separate implementation files.