Every function now returns a different error depending on when you call it—past, present, or speculative future.