This needs a good error message.