;; array.init_data refers to a data segment and therefore requires the datacount
;; section be emitted (so it can be validated, per the spec, using only previous
;; sections), which means bulk memory must be enabled.

;; RUN: not wasm-opt --enable-reference-types --enable-gc %s 2>&1 | filecheck %s

;; CHECK: Data segment operations require bulk memory

(module
 (type $0 (array i8))

 (memory $0 16 17)

 (data $0 (i32.const 0) "")

 (func $0
  (array.init_data $0 $0
   (ref.null $0)
   (i32.const 0)
   (i32.const 0)
   (i32.const 0)
  )
 )
)

;; But it passes with the feature enabled.
;; RUN: wasm-opt --enable-reference-types --enable-gc --enable-bulk-memory %s
