Type of expression is ambiguous 🍎 iOS

Swift: Type of expression is ambiguous without a type annotation (more context)

The compiler can’t infer which type you mean — often because of a typo or a wrong argument elsewhere in the expression.

Seen on: iOS

Meaning

Despite the wording, it usually hides another mistake: a misspelled modifier, wrong parameter label, or missing import. Adding explicit types narrows it down.

Common causes

  • Typo in a method/modifier name or label
  • Wrong argument types in a chained call
  • Overloaded functions with ambiguous literals

⚡ Quick fix

  1. Add explicit types to locals and closures
  2. Check labels/modifier names in the expression
  3. Split the expression

Detailed fix by platform

Swift

  1. let values: [Double] = rows.map { Double($0.count) }

How to diagnose

  1. Expression — Simplify until the real error appears
  2. Recent change — Did it start after a deploy, upgrade, or configuration change? Compare with the last working version.

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.