/* { dg-do compile } */ /* { dg-skip-if "Testing exclusion of -mcmse" { arm-*-* } { "-mcmse" } { "" } } */ void __attribute__ ((cmse_nonsecure_call)) (*bar) (int); /* { dg-warning "attribute ignored without '-mcmse' option" } */ typedef void __attribute__ ((cmse_nonsecure_call)) baz (int); /* { dg-warning "attribute ignored without '-mcmse' option" } */ int __attribute__ ((cmse_nonsecure_entry)) foo (int a, baz b) { /* { dg-warning "attribute ignored without '-mcmse' option" } */ bar (a); b (a); return a + 1; } /* { dg-final { scan-assembler-not "bxns" } } */ /* { dg-final { scan-assembler-not "blxns" } } */ /* { dg-final { scan-assembler-not "bl\t__gnu_cmse_nonsecure_call" } } */ /* { dg-final { scan-assembler "foo:" } } */ /* { dg-final { scan-assembler-not "__acle_se_foo:" } } */