@@ -8795,11 +8795,11 @@ export class Compiler extends DiagnosticEmitter {
8795
8795
var expressions = expression . elementExpressions ;
8796
8796
var length = expressions . length ;
8797
8797
var values = new Array < ExpressionRef > ( length ) ;
8798
- var isStatic = true ;
8798
+ var isStatic = ! elementType . is ( TypeFlags . HOST ) ;
8799
8799
var nativeElementType = elementType . toNativeType ( ) ;
8800
8800
for ( let i = 0 ; i < length ; ++ i ) {
8801
8801
let elementExpression = expressions [ i ] ;
8802
- if ( elementExpression ) {
8802
+ if ( elementExpression . kind != NodeKind . OMITTED ) {
8803
8803
let expr = this . compileExpression ( < Expression > elementExpression , elementType ,
8804
8804
Constraints . CONV_IMPLICIT | Constraints . WILL_RETAIN
8805
8805
) ;
@@ -8811,7 +8811,7 @@ export class Compiler extends DiagnosticEmitter {
8811
8811
}
8812
8812
values [ i ] = expr ;
8813
8813
} else {
8814
- values [ i ] = this . makeZero ( elementType , expression ) ;
8814
+ values [ i ] = this . makeZero ( elementType , elementExpression ) ;
8815
8815
}
8816
8816
}
8817
8817
@@ -8966,10 +8966,10 @@ export class Compiler extends DiagnosticEmitter {
8966
8966
var length = expressions . length ;
8967
8967
var values = new Array < ExpressionRef > ( length ) ;
8968
8968
var nativeElementType = elementType . toNativeType ( ) ;
8969
- var isStatic = true ;
8969
+ var isStatic = ! elementType . is ( TypeFlags . HOST ) ;
8970
8970
for ( let i = 0 ; i < length ; ++ i ) {
8971
8971
let elementExpression = expressions [ i ] ;
8972
- if ( elementExpression ) {
8972
+ if ( elementExpression . kind != NodeKind . OMITTED ) {
8973
8973
let expr = this . compileExpression ( elementExpression , elementType ,
8974
8974
Constraints . CONV_IMPLICIT | Constraints . WILL_RETAIN
8975
8975
) ;
@@ -8981,7 +8981,7 @@ export class Compiler extends DiagnosticEmitter {
8981
8981
}
8982
8982
values [ i ] = expr ;
8983
8983
} else {
8984
- values [ i ] = this . makeZero ( elementType , expression ) ;
8984
+ values [ i ] = this . makeZero ( elementType , elementExpression ) ;
8985
8985
}
8986
8986
}
8987
8987
@@ -10670,7 +10670,7 @@ export class Compiler extends DiagnosticEmitter {
10670
10670
this . error (
10671
10671
DiagnosticCode . Not_implemented_0 ,
10672
10672
reportNode . range ,
10673
- "ref.null<externref> "
10673
+ "ref.null"
10674
10674
) ;
10675
10675
return module . unreachable ( ) ;
10676
10676
}
0 commit comments