7#ifndef ZEPHYR_INCLUDE_TOOLCHAIN_IAR_H_
8#define ZEPHYR_INCLUDE_TOOLCHAIN_IAR_H_
10#ifndef ZEPHYR_INCLUDE_TOOLCHAIN_H_
11#error Please do not include toolchain-specific headers directly, use <zephyr/toolchain.h> instead
14#define TOOLCHAIN_HAS_PRAGMA_DIAG 1
16#define _TOOLCHAIN_DISABLE_WARNING(warning) TOOLCHAIN_PRAGMA(diag_suppress = warning)
17#define _TOOLCHAIN_ENABLE_WARNING(warning) TOOLCHAIN_PRAGMA(diag_default = warning)
19#define TOOLCHAIN_DISABLE_WARNING(warning) _TOOLCHAIN_DISABLE_WARNING(warning)
20#define TOOLCHAIN_ENABLE_WARNING(warning) _TOOLCHAIN_ENABLE_WARNING(warning)
22#define TOOLCHAIN_DISABLE_IAR_WARNING(warning) _TOOLCHAIN_DISABLE_WARNING(warning)
23#define TOOLCHAIN_ENABLE_IAR_WARNING(warning) _TOOLCHAIN_ENABLE_WARNING(warning)
35#ifndef TOOLCHAIN_WARNING_ADDRESS_OF_PACKED_MEMBER
36#define TOOLCHAIN_WARNING_ADDRESS_OF_PACKED_MEMBER Pa039
46#ifndef TOOLCHAIN_WARNING_ARRAY_BOUNDS
47#define TOOLCHAIN_WARNING_ARRAY_BOUNDS Pe001
57#ifndef TOOLCHAIN_WARNING_ATTRIBUTES
58#define TOOLCHAIN_WARNING_ATTRIBUTES Pe1097
69#ifndef TOOLCHAIN_WARNING_DELETE_NON_VIRTUAL_DTOR
70#define TOOLCHAIN_WARNING_DELETE_NON_VIRTUAL_DTOR Pe001
80#ifndef TOOLCHAIN_WARNING_DEPRECATED_DECLARATIONS
81#define TOOLCHAIN_WARNING_DEPRECATED_DECLARATIONS Pe1215
91#ifndef TOOLCHAIN_WARNING_EXTRA
92#define TOOLCHAIN_WARNING_EXTRA Pe001
102#ifndef TOOLCHAIN_WARNING_NONNULL
103#define TOOLCHAIN_WARNING_NONNULL Pe001
113#ifndef TOOLCHAIN_WARNING_POINTER_ARITH
114#define TOOLCHAIN_WARNING_POINTER_ARITH Pe1143
124#ifndef TOOLCHAIN_WARNING_SHADOW
125#define TOOLCHAIN_WARNING_SHADOW Pe001
135#ifndef TOOLCHAIN_WARNING_UNUSED_LABEL
136#define TOOLCHAIN_WARNING_UNUSED_LABEL Pe001
146#define TOOLCHAIN_WARNING_UNUSED_VARIABLE Pe001
148#define TOOLCHAIN_WARNING_UNUSED_FUNCTION Pe001
ICCARM toolchain abstraction.