@@ -530,15 +530,12 @@ extension StmtTypeChecker {
530530 ) -> ResultColumns {
531531 var resultColumns : Columns = [ : ]
532532
533- for value in returningClause. values {
533+ for (offset , value) in returningClause. values. enumerated ( ) {
534534 switch value {
535535 case let . expr( expr, alias) :
536536 let ( type, names) = typeCheck ( expr)
537537
538- guard let name = alias? . identifier. value ?? names. proposedName else {
539- diagnostics. add ( . nameRequired( at: expr. location) )
540- continue
541- }
538+ let name = alias? . identifier. value ?? names. proposedName ?? " column \( offset + 1 ) "
542539
543540 resultColumns [ name] = type
544541 case . all:
@@ -696,17 +693,14 @@ extension StmtTypeChecker {
696693 table = nil
697694 }
698695
699- for resultColumn in resultColumns {
696+ for (offset , resultColumn) in resultColumns. enumerated ( ) {
700697 switch resultColumn. kind {
701698 case let . expr( expr, alias) :
702699 let ( type, names) = typeCheck ( expr)
700+ let name = alias? . identifier. value ?? names. proposedName ?? " column \( offset + 1 ) "
703701
704- if let name = alias? . identifier. value ?? names. proposedName {
705- columns [ name] = type
706- nameInferrer. suggest ( name: name, for: names)
707- } else {
708- diagnostics. add ( . nameRequired( at: expr. location) )
709- }
702+ columns [ name] = type
703+ nameInferrer. suggest ( name: name, for: names)
710704
711705 // We selected a single column, so clear out the table
712706 // since its not a select all of a table.
0 commit comments