kokkos-execution 0.0.1
Loading...
Searching...
No Matches
ignore_warnings.hpp
Go to the documentation of this file.
1#ifndef KOKKOS_EXECUTION_UTILS_IGNORE_WARNINGS_HPP
2#define KOKKOS_EXECUTION_UTILS_IGNORE_WARNINGS_HPP
3
4#define DO_PRAGMA_(x) _Pragma(#x)
5
6#if defined(__clang__)
7# define PRAGMA_DIAGNOSTIC_POP _Pragma("clang diagnostic pop")
8# define PRAGMA_DIAGNOSTIC_PUSH _Pragma("clang diagnostic push")
9//NOLINTNEXTLINE(cppcoreguidelines-macro-usage)
10# define PRAGMA_DIAGNOSTIC_IGNORED(what) DO_PRAGMA_(clang diagnostic ignored what)
11# define KOKKOS_EXECUTION_PRAGMA_DIAGNOSTIC_IGNORED_DANGLING_REFERENCE
12#elif defined(__GNUC__) || defined(__GNUG__)
13# define PRAGMA_DIAGNOSTIC_POP _Pragma("GCC diagnostic pop")
14# define PRAGMA_DIAGNOSTIC_PUSH _Pragma("GCC diagnostic push")
15# define PRAGMA_DIAGNOSTIC_IGNORED(what) DO_PRAGMA_(GCC diagnostic ignored what)
16# define KOKKOS_EXECUTION_PRAGMA_DIAGNOSTIC_IGNORED_DANGLING_REFERENCE \
17 PRAGMA_DIAGNOSTIC_IGNORED("-Wdangling-reference")
18#else
19# error "Unsupported compiler."
20#endif
21
22#if defined(__clang__)
23# define KOKKOS_EXECUTION_STDEXEC_PRAGMA_DIAGNOSTIC_IGNORED_COMPILER_SPECIFIC \
24 PRAGMA_DIAGNOSTIC_IGNORED("-Wdeprecated-attributes")
25#elif defined(__GNUC__) || defined(__GNUG__)
26# define KOKKOS_EXECUTION_STDEXEC_PRAGMA_DIAGNOSTIC_IGNORED_COMPILER_SPECIFIC \
27 PRAGMA_DIAGNOSTIC_IGNORED("-Wmaybe-uninitialized")
28#else
29# define KOKKOS_EXECUTION_STDEXEC_PRAGMA_DIAGNOSTIC_IGNORED_COMPILER_SPECIFIC
30#endif
31
33#if !defined(__DOXYGEN__)
34# define KOKKOS_EXECUTION_STDEXEC_PRAGMA_DIAGNOSTIC_IGNORED \
35 KOKKOS_EXECUTION_STDEXEC_PRAGMA_DIAGNOSTIC_IGNORED_COMPILER_SPECIFIC \
36 PRAGMA_DIAGNOSTIC_IGNORED("-Wdeprecated-copy") \
37 PRAGMA_DIAGNOSTIC_IGNORED("-Wempty-body") \
38 PRAGMA_DIAGNOSTIC_IGNORED("-Wignored-qualifiers") \
39 PRAGMA_DIAGNOSTIC_IGNORED("-Wshadow") \
40 PRAGMA_DIAGNOSTIC_IGNORED("-Wsuggest-override") \
41 PRAGMA_DIAGNOSTIC_IGNORED("-Wswitch-default") \
42 PRAGMA_DIAGNOSTIC_IGNORED("-Wunused-result")
43#else
44# define KOKKOS_EXECUTION_STDEXEC_PRAGMA_DIAGNOSTIC_IGNORED
45#endif
46#endif // KOKKOS_EXECUTION_UTILS_IGNORE_WARNINGS_HPP