// Copyright (c) 2026, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. // dart2wasmOptions=--extra-compiler-option=--enable-experimental-wasm-interop import 'dart:_wasm'; external Memory get missingAnnotation; // ^ // [web] This external getter returns a memory instance, but no annotation describing it was found @pragma('wasm:memory-type', MemoryType(limits: Limits(1, 10))) external Memory get validDefinition; void main() { validDefinition.loadUint8(10); validDefinition.size; print(validDefinition); // ^ // [web] WebAssembly elements may only be referenced to directly call a method on them. print(validDefinition.fill); // ^ // [web] This intrinsic extension member may not be torn off. } void invalidDynamicMemory(Memory memory) { memory.loadUint8(10); // ^ // [web] The receiver of this call must be a top-level variable describing the WebAssembly element. } int get notAConstant => 3; void invalidNonConstantArguments() { validDefinition.loadUint8(0, offset: 12, align: 1); validDefinition.loadUint8(0, offset: notAConstant); // ^ // [web] The variable 'offset' is not a constant, only constant expressions are allowed. validDefinition.loadUint8(0, align: notAConstant); // ^ // [web] The variable 'align' is not a constant, only constant expressions are allowed. }