this needs to get `self.compiler_type`, or it can end up getting the wrong compiler.