Mercurial > hg > CbC > CbC_llvm
view clang/test/Preprocessor/is_target_variant.c @ 266:00f31e85ec16 default tip
Added tag current for changeset 31d058e83c98
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 14 Oct 2023 10:13:55 +0900 |
parents | c4bab56944e8 |
children |
line wrap: on
line source
// RUN: %clang_cc1 -fsyntax-only -triple arm64-apple-macos -DMAC -verify %s // RUN: %clang_cc1 -fsyntax-only -triple arm64-apple-ios13.1 -DIOS -verify %s // RUN: %clang_cc1 -fsyntax-only -triple arm64-apple-ios13.1-macabi -DCATALYST -verify %s // RUN: %clang_cc1 -fsyntax-only -triple arm64-apple-macos12 -darwin-target-variant-triple arm64-apple-ios-macabi -DZIPPERED -verify %s // expected-no-diagnostics #if !__has_builtin(__is_target_variant_os) || !__has_builtin(__is_target_variant_environment) #error "has builtin doesn't work" #endif #ifdef ZIPPERED // Target variant is a darwin. #if !__is_target_variant_os(darwin) #error "mismatching variant os" #endif // Target variant is not macOS... #if __is_target_variant_os(macos) #error "mismatching variant os" #endif // ...but iOS. #if !__is_target_variant_os(ios) #error "mismatching variant os" #endif // Zippered builds also set the target variant environment to macabi. // At the moment, only zippered builds set __is_target_variant_os(ios), // so checking __is_target_variant_environment() is currently redundant // with checking the former. #if !__is_target_variant_environment(macabi) #error "mismatching variant environment" #endif #else // In non-zippered builds, even for catalyst, no target variant is set. // So these are all false. #if __is_target_variant_os(darwin) #error "mismatching variant os" #endif #if __is_target_variant_os(macos) #error "mismatching variant os" #endif #if __is_target_variant_os(ios) #error "mismatching variant os" #endif #if __is_target_variant_environment(macabi) #error "mismatching variant environment" #endif #endif // The target environment in zippered builds is _not_ macabi. // The target environment is macabi only in catalyst builds. #ifdef CATALYST #if !__is_target_environment(macabi) #error "mismatching environment" #endif #if !__is_target_os(ios) #error "mismatching os" #endif #else #if __is_target_environment(macabi) #error "mismatching environment" #endif #endif