Fixes #3089 -- don't mutate options passed in to compile()