// RUN: %target-sil-opt -module-name Swift -enable-sil-verify-all %s -diagnostics | %FileCheck %s

sil_stage raw

import Builtin

enum Never {}
class TheClass {}

// Ensure that when we remove the code after the apply of noreturn
// function nada, we don't fail verification on a dealloc_stack with
// an undef operand, but that we do later remove it in the diagnostics
// passes.

// CHECK-LABEL: sil @unreachable_deallocstack
sil @unreachable_deallocstack: $@convention(method) (@guaranteed TheClass) -> () {
bb0(%0 : $TheClass):
  %1 = function_ref @nada : $@convention(c) (Builtin.Int32) -> Never
  %2 = integer_literal $Builtin.Int32, 0
  // CHECK: apply{{.*}}
  %3 = apply %1(%2) : $@convention(c) (Builtin.Int32) -> Never
  // CHECK-NEXT: unreachable
  // CHECK-NOT: dealloc_stack
  %4 = alloc_stack $TheClass
  store %0 to %4 : $*TheClass
  br bb1

bb1:
  dealloc_stack %4 : $*TheClass
  %5 = tuple ()
  return %5 : $()
}

// CHECK-LABEL: sil @nada
sil @nada : $@convention(c) (Builtin.Int32) -> Never
