Необязательная привязка литерала nil к переменной, равной nil в Swift

В Swift почему

var x: Int? = nil
if let y: Int? = x { ... }

вести себя иначе, чем

if let y: Int? = nil { ... }

мойпонимание то, почему первый случай успешен, говорит о том, что второй тоже должен, так что я не должен понимать.

Последнее не дает сбоя ни из-за неверного назначения, ни из-за необязательного связывания; а в остальном похоже на прежний. Почему последнее терпит неудачу и чем оно отличается от первого. Точно, в какой момент и по какой причине отменяется второе необязательное связывание?

Ответы на вопрос(3)

Ваш ответ на вопрос