// Test hlfir.destroy operation parse, verify (no errors), and unparse. // RUN: fir-opt %s | fir-opt | FileCheck %s func.func @test(%expr : !hlfir.expr) { hlfir.destroy %expr : !hlfir.expr return } // CHECK-LABEL: func.func @test( // CHECK-SAME: %[[VAL_0:.*]]: !hlfir.expr) { // CHECK: hlfir.destroy %[[VAL_0]] : !hlfir.expr func.func @test_finalize_dt(%expr : !hlfir.expr>) { hlfir.destroy %expr finalize : !hlfir.expr> return } // CHECK-LABEL: func.func @test_finalize_dt( // CHECK-SAME: %[[VAL_0:.*]]: !hlfir.expr>) { // CHECK: hlfir.destroy %[[VAL_0]] finalize : !hlfir.expr> func.func @test_finalize_poly(%expr : !hlfir.expr?>) { hlfir.destroy %expr finalize : !hlfir.expr?> return } // CHECK-LABEL: func.func @test_finalize_poly( // CHECK-SAME: %[[VAL_0:.*]]: !hlfir.expr?>) { // CHECK: hlfir.destroy %[[VAL_0]] finalize : !hlfir.expr?>