diff options
author | Yi Kong <yikong@google.com> | 2018-12-21 14:52:47 -0800 |
---|---|---|
committer | Yi Kong <yikong@google.com> | 2018-12-21 14:52:47 -0800 |
commit | 45cb85f8c06351157db0f71b9fa67c412513811c (patch) | |
tree | 39529b5b204cc313fcfeba8a13f5462ffc70471f | |
parent | b31202ca170ab03083a7dfeb936f33a101d6dd74 (diff) | |
download | android_hardware_interfaces-45cb85f8c06351157db0f71b9fa67c412513811c.tar.gz android_hardware_interfaces-45cb85f8c06351157db0f71b9fa67c412513811c.tar.bz2 android_hardware_interfaces-45cb85f8c06351157db0f71b9fa67c412513811c.zip |
Suppress null-dereference warning
It is unclear whether author intentionally meant to cause segfault here.
While waiting for the author to explain/fix the code, suppress the
warning to unblock enabling the warning globally.
Test: m checkbuild
Bug: 121390225
Change-Id: Iad03842833cfdc243404a32f6b31d161387c3890
-rw-r--r-- | keymaster/3.0/vts/functional/keymaster_tags.h | 3 | ||||
-rw-r--r-- | keymaster/4.0/support/include/keymasterV4_0/keymaster_tags.h | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/keymaster/3.0/vts/functional/keymaster_tags.h b/keymaster/3.0/vts/functional/keymaster_tags.h index f241ef160..8544bf7dd 100644 --- a/keymaster/3.0/vts/functional/keymaster_tags.h +++ b/keymaster/3.0/vts/functional/keymaster_tags.h @@ -274,7 +274,10 @@ inline KeyParameter Authorization(TypedTag<tag_type, tag> ttag, Args&&... args) */ template <typename ValueT> class NullOr { template <typename T> struct reference_initializer { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wnull-dereference" static T&& init() { return *static_cast<std::remove_reference_t<T>*>(nullptr); } +#pragma GCC diagnostic pop }; template <typename T> struct pointer_initializer { static T init() { return nullptr; } diff --git a/keymaster/4.0/support/include/keymasterV4_0/keymaster_tags.h b/keymaster/4.0/support/include/keymasterV4_0/keymaster_tags.h index 61c444c16..97dab6821 100644 --- a/keymaster/4.0/support/include/keymasterV4_0/keymaster_tags.h +++ b/keymaster/4.0/support/include/keymasterV4_0/keymaster_tags.h @@ -282,7 +282,10 @@ template <typename ValueT> class NullOr { template <typename T> struct reference_initializer { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wnull-dereference" static T&& init() { return *static_cast<std::remove_reference_t<T>*>(nullptr); } +#pragma GCC diagnostic pop }; template <typename T> struct pointer_initializer { |