Just tried that and it [triggered a compiler bug](https://github.com/kripken/emscripten/issues/1509). Switched `interpolate` to a macro instead and it worked. The generated JS stayed identical, so it *was* inlining, not sure why the explicit declaration failed.