dev: -Wdeprecated-copy not available on all supported compilers
authorGiacomo Travaglini <giacomo.travaglini@arm.com>
Thu, 19 Nov 2020 18:03:16 +0000 (18:03 +0000)
committerGiacomo Travaglini <giacomo.travaglini@arm.com>
Wed, 25 Nov 2020 09:43:24 +0000 (09:43 +0000)
This option has been introduced in:
1) gcc/9.0 [1]
2) clang/10.0.0 [2]

[1]: https://gcc.gnu.org/gcc-9/changes.html
[2]: https://releases.llvm.org/10.0.0/tools/clang/docs/ReleaseNotes.html

Change-Id: Iee9de40ca462107ec78603ffe5bc0891d6904730
Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/37795
Reviewed-by: Richard Cooper <richard.cooper@arm.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Reviewed-by: Gabe Black <gabe.black@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Gabe Black <gabe.black@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
src/dev/reg_bank.test.cc

index 348900be771c66d121145f576ac85786c3c6c4da..6e655e2714b3419eec0a53a78445806c55920abf 100644 (file)
@@ -1,4 +1,16 @@
 /*
+ * Copyright (c) 2020 ARM Limited
+ * All rights reserved
+ *
+ * The license below extends only to copyright in the software and shall
+ * not be construed as granting a license to any other intellectual
+ * property including but not limited to intellectual property relating
+ * to a hardware implementation of the functionality of the software
+ * licensed hereunder.  You may use the software subject to the license
+ * terms below provided that you ensure that this notice is replicated
+ * unmodified and in its entirety in all distributions of the software,
+ * modified or unmodified, in source code or in binary form.
+ *
  * Copyright 2020 Google, Inc.
  *
  * Redistribution and use in source and binary forms, with or without
  */
 
 #pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdeprecated-copy"
+
+// __GNUC__ defined for both clang and gcc
+// -Wdeprecated-copy has been added in clang10.0.0 and gcc9.0
+#if defined(__GNUC__)
+#    if (defined(__clang__) && __GNUC__ >= 10) || \
+        (!defined(__clang__) && __GNUC__ >= 9)
+#        pragma GCC diagnostic ignored "-Wdeprecated-copy"
+#    endif
+#endif
+
 #include <gmock/gmock.h>
 #include <gtest/gtest.h>