Fix MemoryError when inferring f-string with large width (#2972)

Fix MemoryError when inferring f-string with large format width

Catch MemoryError in FormattedValue._infer() so that f-strings with
huge format widths (e.g. f'{0:11111111111}') yield Uninferable instead
of crashing.

The test uses an OOMInt subclass whose __format__ raises MemoryError,
avoiding the slow/OOM-inducing actual allocation.

Closes #2762
3 files changed