LCOV - code coverage report
Current view: top level - zephyr/toolchain - iar.h Coverage Total Hit
Test: new.info Lines: 58.8 % 17 10
Test Date: 2025-09-05 16:43:28

            Line data    Source code
       1            0 : /*
       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            0 : #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            0 : #define TOOLCHAIN_DISABLE_WARNING(warning) _TOOLCHAIN_DISABLE_WARNING(warning)
      16            0 : #define TOOLCHAIN_ENABLE_WARNING(warning)  _TOOLCHAIN_ENABLE_WARNING(warning)
      17              : 
      18            0 : #define TOOLCHAIN_DISABLE_IAR_WARNING(warning) _TOOLCHAIN_DISABLE_WARNING(warning)
      19            0 : #define TOOLCHAIN_ENABLE_IAR_WARNING(warning)  _TOOLCHAIN_ENABLE_WARNING(warning)
      20              : 
      21              : /* Generic warnings */
      22              : 
      23              : 
      24              : /**
      25              :  * @def TOOLCHAIN_WARNING_ADDRESS_OF_PACKED_MEMBER
      26              :  * @brief Toolchain-specific warning for taking the address of a packed member.
      27              :  *
      28              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
      29              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
      30              :  */
      31              : #ifndef TOOLCHAIN_WARNING_ADDRESS_OF_PACKED_MEMBER
      32            1 : #define TOOLCHAIN_WARNING_ADDRESS_OF_PACKED_MEMBER Pa039
      33              : #endif
      34              : 
      35              : /**
      36              :  * @def TOOLCHAIN_WARNING_ARRAY_BOUNDS
      37              :  * @brief Toolchain-specific warning for array bounds violations.
      38              :  *
      39              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
      40              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
      41              :  */
      42              : #ifndef TOOLCHAIN_WARNING_ARRAY_BOUNDS
      43            1 : #define TOOLCHAIN_WARNING_ARRAY_BOUNDS Pe001
      44              : #endif
      45              : 
      46              : /**
      47              :  * @def TOOLCHAIN_WARNING_ATTRIBUTES
      48              :  * @brief Toolchain-specific warning for unknown attributes.
      49              :  *
      50              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
      51              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
      52              :  */
      53              : #ifndef TOOLCHAIN_WARNING_ATTRIBUTES
      54            1 : #define TOOLCHAIN_WARNING_ATTRIBUTES Pe1097
      55              : #endif
      56              : 
      57              : /**
      58              :  * @def TOOLCHAIN_WARNING_DELETE_NON_VIRTUAL_DTOR
      59              :  * @brief Toolchain-specific warning for deleting a pointer to an object
      60              :  * with a non-virtual destructor.
      61              :  *
      62              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
      63              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
      64              :  */
      65              : #ifndef TOOLCHAIN_WARNING_DELETE_NON_VIRTUAL_DTOR
      66            1 : #define TOOLCHAIN_WARNING_DELETE_NON_VIRTUAL_DTOR Pe001
      67              : #endif
      68              : 
      69              : /**
      70              :  * @def TOOLCHAIN_WARNING_EXTRA
      71              :  * @brief Toolchain-specific warning for extra warnings.
      72              :  *
      73              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
      74              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
      75              :  */
      76              : #ifndef TOOLCHAIN_WARNING_EXTRA
      77            1 : #define TOOLCHAIN_WARNING_EXTRA Pe001
      78              : #endif
      79              : 
      80              : /**
      81              :  * @def TOOLCHAIN_WARNING_NONNULL
      82              :  * @brief Toolchain-specific warning for null pointer arguments to functions marked with "nonnull".
      83              :  *
      84              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
      85              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
      86              :  */
      87              : #ifndef TOOLCHAIN_WARNING_NONNULL
      88            1 : #define TOOLCHAIN_WARNING_NONNULL Pe001
      89              : #endif
      90              : 
      91              : /**
      92              :  * @def TOOLCHAIN_WARNING_POINTER_ARITH
      93              :  * @brief Toolchain-specific warning for pointer arithmetic.
      94              :  *
      95              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
      96              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
      97              :  */
      98              : #ifndef TOOLCHAIN_WARNING_POINTER_ARITH
      99            1 : #define TOOLCHAIN_WARNING_POINTER_ARITH Pe1143
     100              : #endif
     101              : 
     102              : /**
     103              :  * @def TOOLCHAIN_WARNING_SHADOW
     104              :  * @brief Toolchain-specific warning for shadow variables.
     105              :  *
     106              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
     107              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
     108              :  */
     109              : #ifndef TOOLCHAIN_WARNING_SHADOW
     110            1 : #define TOOLCHAIN_WARNING_SHADOW Pe001
     111              : #endif
     112              : 
     113              : /**
     114              :  * @def TOOLCHAIN_WARNING_UNUSED_LABEL
     115              :  * @brief Toolchain-specific warning for unused labels.
     116              :  *
     117              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
     118              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
     119              :  */
     120              : #ifndef TOOLCHAIN_WARNING_UNUSED_LABEL
     121            1 : #define TOOLCHAIN_WARNING_UNUSED_LABEL Pe001
     122              : #endif
     123              : 
     124              : /**
     125              :  * @def TOOLCHAIN_WARNING_UNUSED_VARIABLE
     126              :  * @brief Toolchain-specific warning for unused variables.
     127              :  *
     128              :  * Use this as an argument to the @ref TOOLCHAIN_DISABLE_WARNING and
     129              :  * @ref TOOLCHAIN_ENABLE_WARNING family of macros.
     130              :  */
     131            1 : #define TOOLCHAIN_WARNING_UNUSED_VARIABLE Pe001
     132              : 
     133            0 : #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_ */
        

Generated by: LCOV version 2.0-1