@@ -51,7 +51,7 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
5151
5252 if (e.target case final UpdateTarget onUpdate) {
5353 onUpdate.scope = SingleTableReferenceScope (scope, e.onTable.tableName,
54- ResultSetAvailableInStatement (e.onTable, table, e.onTable.as ));
54+ ResultSetAvailableInStatement (e.onTable, table, e.onTable.as ? .name ));
5555 }
5656
5757 visitChildren (e, arg);
@@ -164,7 +164,7 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
164164 e.foreignTable.tableName,
165165 resolved != null
166166 ? ResultSetAvailableInStatement (
167- e.foreignTable, resolved, e.foreignTable.as )
167+ e.foreignTable, resolved, e.foreignTable.as ? .name )
168168 : null ,
169169 );
170170 e.scope = scope;
@@ -303,7 +303,7 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
303303 source,
304304 resultSet,
305305 switch (source) {
306- Renamable (as : final alias) => alias,
306+ Renamable (as : final alias? ) => alias.name ,
307307 _ => null ,
308308 });
309309
@@ -318,13 +318,13 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
318318 case final TableReference table:
319319 final resolved = _resolveTableReference (table, state);
320320 markAvailableResultSet (
321- table, resolved ?? table, table.as ?? table.tableName);
321+ table, resolved ?? table, table.as ? .name ?? table.tableName);
322322
323323 if (resolved != null ) {
324324 addColumns (table.resultSet! .resolvedColumns! );
325325 }
326326 case final SelectStatementAsSource select:
327- markAvailableResultSet (select, select.statement, select.as );
327+ markAvailableResultSet (select, select.statement, select.as ? .name );
328328
329329 // Inside subqueries, references don't take the name of the referenced
330330 // column.
@@ -356,13 +356,14 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
356356 if (resolved == null ) {
357357 final table = scope.resolveResultSetToAdd (function.name);
358358 if (table is Table && table.isVirtual) {
359- resolved =
360- function.as != null ? TableAlias (table, function.as ! ) : table;
359+ resolved = function.as != null
360+ ? TableAlias (table, function.as ! .name)
361+ : table;
361362 }
362363 }
363364
364365 markAvailableResultSet (
365- function, resolved ?? function, function.as ?? function.name);
366+ function, resolved ?? function, function.as ? .name ?? function.name);
366367
367368 if (resolved == null ) {
368369 context.reportError (AnalysisError (
@@ -445,7 +446,7 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
445446 Column column;
446447
447448 if (expression is Reference ) {
448- var fixedName = resultColumn.as ;
449+ var fixedName = resultColumn.as ? .name ;
449450 if (! state.referencesUseNameOfReferencedColumn) {
450451 fixedName = _nameOfResultColumn (resultColumn);
451452 }
@@ -561,7 +562,7 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
561562 }
562563
563564 String ? _nameOfResultColumn (ExpressionResultColumn c) {
564- if (c.as != null ) return c. as ;
565+ if (c.as case final alias ? ) return alias.name ;
565566
566567 if (c.expression is Reference ) {
567568 return (c.expression as Reference ).columnName;
@@ -596,7 +597,7 @@ class ColumnResolver extends RecursiveVisitor<ColumnResolverContext, void> {
596597
597598 if (resolvedInSchema != null ) {
598599 return r.resolved = createdName != null
599- ? TableAlias (resolvedInSchema, createdName)
600+ ? TableAlias (resolvedInSchema, createdName.name )
600601 : resolvedInSchema;
601602 } else {
602603 Iterable <String >? available;
0 commit comments