[build] Enable -fobjc-constant-literals

and fix any code relying on non-constant literal behavior:

- One DCHECK used isEqualToValue: which checks not just numerical
  equality, but equality of the NSNumbers' value type (int, long, ..)
  which isn't guaranteed; see
  https://github.com/llvm/llvm-project/pull/185130#issuecomment-4371656521

- Some EXPECT_EQ's were checking pointer equality of NSNumbers, which
  happened to work before, but not with -fobjc-constant-literals.

Bug: 500431896
Cq-Include-Trybots: luci.chromium.try:ios-simulator
Change-Id: I2e05eb4712e503e29587cce1180da2deaaaac086
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7815974
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1625590}
NOKEYCHECK=True
GitOrigin-RevId: 9021c2d1ca16dcf2fcf7fe14f39ce35c00518f6f
1 file changed