10b57cec5SDimitry Andric /*===---- iso646.h - Standard header for alternate spellings of operators---=== 20b57cec5SDimitry Andric * 30b57cec5SDimitry Andric * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 40b57cec5SDimitry Andric * See https://llvm.org/LICENSE.txt for license information. 50b57cec5SDimitry Andric * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 60b57cec5SDimitry Andric * 70b57cec5SDimitry Andric *===-----------------------------------------------------------------------=== 80b57cec5SDimitry Andric */ 90b57cec5SDimitry Andric 100b57cec5SDimitry Andric #ifndef __ISO646_H 110b57cec5SDimitry Andric #define __ISO646_H 12*0fca6ea1SDimitry Andric #if defined(__MVS__) && __has_include_next(<iso646.h>) 13*0fca6ea1SDimitry Andric #include_next <iso646.h> 14*0fca6ea1SDimitry Andric #else 150b57cec5SDimitry Andric 160b57cec5SDimitry Andric #ifndef __cplusplus 170b57cec5SDimitry Andric #define and && 180b57cec5SDimitry Andric #define and_eq &= 190b57cec5SDimitry Andric #define bitand & 200b57cec5SDimitry Andric #define bitor | 210b57cec5SDimitry Andric #define compl ~ 220b57cec5SDimitry Andric #define not ! 230b57cec5SDimitry Andric #define not_eq != 240b57cec5SDimitry Andric #define or || 250b57cec5SDimitry Andric #define or_eq |= 260b57cec5SDimitry Andric #define xor ^ 270b57cec5SDimitry Andric #define xor_eq ^= 280b57cec5SDimitry Andric #endif 290b57cec5SDimitry Andric 30*0fca6ea1SDimitry Andric #endif /* __MVS__ */ 310b57cec5SDimitry Andric #endif /* __ISO646_H */ 32