Re-introduce specialization to work around MSC16 bug