summaryrefslogtreecommitdiff
path: root/ACE/ace/config-g++-common.h
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@users.noreply.github.com>2016-10-31 12:13:20 +0100
committerGitHub <noreply@github.com>2016-10-31 12:13:20 +0100
commitbd5aaab0e6022781ff8fdb383ea75ae3ecc3b17d (patch)
tree215b87a96310aeef290fd8d6aaf538a8bb183374 /ACE/ace/config-g++-common.h
parentfdc242fcb81d6ab5893d462364b50632241afdf4 (diff)
parent4bb4047e520cd551b7d9bf0a1079103b68e3bf7d (diff)
downloadATCD-bd5aaab0e6022781ff8fdb383ea75ae3ecc3b17d.tar.gz
Merge pull request #176 from esohns/master
some (bundled) minor changes (take 2)
Diffstat (limited to 'ACE/ace/config-g++-common.h')
-rw-r--r--ACE/ace/config-g++-common.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/ACE/ace/config-g++-common.h b/ACE/ace/config-g++-common.h
index 4ced0ef10b6..9d60b39d174 100644
--- a/ACE/ace/config-g++-common.h
+++ b/ACE/ace/config-g++-common.h
@@ -38,7 +38,22 @@
# if __cplusplus > 201103L
# define ACE_HAS_CPP14
# endif
-#endif
+#endif /* __GNUC__ >= 4.7 */
+
+// *NOTE*: this feature may go back further, see e.g.:
+// https://gcc.gnu.org/projects/cxx0x.html
+#if defined (ACE_HAS_CPP11)
+# if (__GNUC__ >= 5 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
+# define ACE_HAS_CPP11_EXTERN_TEMPLATES
+# endif /* __GNUC__ >= 4.3 */
+
+// *NOTE*: suppress a warning, g++ 5.2.1 does not support attributes on template
+// instantiation declarations
+// *TODO*: this probably goes back further than 5.2
+# if (__GNUC__ >= 6 || (__GNUC__ == 5 && __GNUC_MINOR__ >= 2))
+# define ACE_LACKS_CPP11_EXTERN_TEMPLATE_ATTRIBUTES
+# endif /* __GNUC__ >= 5.2 */
+#endif /* ACE_HAS_CPP11 */
#if (defined (i386) || defined (__i386__)) && !defined (ACE_SIZEOF_LONG_DOUBLE)
# define ACE_SIZEOF_LONG_DOUBLE 12