1 // RUN: %clang_cc1 -std=c++1z %s -emit-llvm -fblocks -triple x86_64-apple-darwin10 -o - | FileCheck %s --implicit-check-not=should_not_be_used
3 void should_be_used_1();
4 void should_be_used_2();
5 void should_be_used_3();
6 void should_not_be_used();
9 constexpr explicit operator bool() const {
20 if constexpr (true || ({ label
: false; }))
24 foo
: should_not_be_used();
32 // CHECK: should_be_used_1
33 // CHECK: should_be_used_2
34 // CHECK: should_be_used_3
36 namespace BlockThisCapture
{
41 ^{ if constexpr(b
) (void)this; else foo(); }();
50 // CHECK-LABEL: define internal void @___ZN16BlockThisCapture1S1mILb0EEEvv_block_invoke(
51 // CHECK: call void @_ZN16BlockThisCapture3fooEv(