Zephyr API Documentation 4.1.99
A Scalable Open Source RTOS
 4.1.99
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
iar.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025 IAR Systems AB
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7#ifndef ZEPHYR_INCLUDE_TOOLCHAIN_IAR_H_
8#define ZEPHYR_INCLUDE_TOOLCHAIN_IAR_H_
9
10#define TOOLCHAIN_HAS_PRAGMA_DIAG
11
12#define _TOOLCHAIN_DISABLE_WARNING(warning) TOOLCHAIN_PRAGMA(diag_suppress = warning)
13#define _TOOLCHAIN_ENABLE_WARNING(warning) TOOLCHAIN_PRAGMA(diag_default = warning)
14
15#define TOOLCHAIN_DISABLE_WARNING(warning) _TOOLCHAIN_DISABLE_WARNING(warning)
16#define TOOLCHAIN_ENABLE_WARNING(warning) _TOOLCHAIN_ENABLE_WARNING(warning)
17
18#define TOOLCHAIN_DISABLE_IAR_WARNING(warning) _TOOLCHAIN_DISABLE_WARNING(warning)
19#define TOOLCHAIN_ENABLE_IAR_WARNING(warning) _TOOLCHAIN_ENABLE_WARNING(warning)
20
21/* Generic warnings */
22
23
31#ifndef TOOLCHAIN_WARNING_ADDRESS_OF_PACKED_MEMBER
32#define TOOLCHAIN_WARNING_ADDRESS_OF_PACKED_MEMBER Pe001
33#endif
34
42#ifndef TOOLCHAIN_WARNING_ARRAY_BOUNDS
43#define TOOLCHAIN_WARNING_ARRAY_BOUNDS Pe001
44#endif
45
53#ifndef TOOLCHAIN_WARNING_ATTRIBUTES
54#define TOOLCHAIN_WARNING_ATTRIBUTES Pe1097
55#endif
56
65#ifndef TOOLCHAIN_WARNING_DELETE_NON_VIRTUAL_DTOR
66#define TOOLCHAIN_WARNING_DELETE_NON_VIRTUAL_DTOR Pe001
67#endif
68
76#ifndef TOOLCHAIN_WARNING_EXTRA
77#define TOOLCHAIN_WARNING_EXTRA Pe001
78#endif
79
87#ifndef TOOLCHAIN_WARNING_NONNULL
88#define TOOLCHAIN_WARNING_NONNULL Pe001
89#endif
90
98#ifndef TOOLCHAIN_WARNING_POINTER_ARITH
99#define TOOLCHAIN_WARNING_POINTER_ARITH Pe1143
100#endif
101
109#ifndef TOOLCHAIN_WARNING_SHADOW
110#define TOOLCHAIN_WARNING_SHADOW Pe001
111#endif
112
120#ifndef TOOLCHAIN_WARNING_UNUSED_LABEL
121#define TOOLCHAIN_WARNING_UNUSED_LABEL Pe001
122#endif
123
131#define TOOLCHAIN_WARNING_UNUSED_VARIABLE Pe001
132
133#define TOOLCHAIN_WARNING_UNUSED_FUNCTION Pe001
134
135#ifdef __ICCARM__
136#include "iar/iccarm.h"
137#endif
138#ifdef __ICCRISCV__
139#include "iar/iccriscv.h"
140#endif
141
142#endif /* ZEPHYR_INCLUDE_TOOLCHAIN_ICCARM_H_ */
ICCARM toolchain abstraction.