Ensure visibility of std namespace symbols are hidden with later versions of GCC 20/199120/4
authorAdeel Kazmi <adeel.kazmi@samsung.com>
Mon, 4 Feb 2019 15:24:30 +0000 (15:24 +0000)
committerAdeel Kazmi <adeel.kazmi@samsung.com>
Mon, 4 Feb 2019 18:06:35 +0000 (18:06 +0000)
Change-Id: If18e4e8c4244ddb5261e2a7190327b5129578b87

dali/devel-api/common/map-wrapper.h
dali/devel-api/common/set-wrapper.h
dali/public-api/common/vector-wrapper.h

index dc363c1..c02dd39 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef __DALI_MAP_H__
-#define __DALI_MAP_H__
+#ifndef DALI_MAP_WRAPPER_H
+#define DALI_MAP_WRAPPER_H
 
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  *
  */
 
-// EXTERNAL INCLUDES
-#include <dali/public-api/common/dali-common.h>
-
-
 #ifndef HIDE_DALI_INTERNALS
 
-# include <map>
+#include <map>
 
 #else
 
+// Ensure that default visibility is used with any class that is used as an exception type
+#include <memory>
+#include <new>
+#include <stdexcept>
+
 #if defined(__clang__)
 
 #undef _LIBCPP_INLINE_VISIBILITY
 
 #else
 
-// ensure that default visibility is used with any class that is used as an exception type
-# include <memory>
-# include <new>
-# include <stdexcept>
-
-# include <bits/c++config.h>
-# include <bits/stl_tree.h>
-# undef _GLIBCXX_VISIBILITY_ATTR
-# define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ ("hidden")))
-# include <map>
-# undef _GLIBCXX_VISIBILITY_ATTR
-# define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY_ATTR`
-
-#endif //ifdef __clang__
+#include <bits/c++config.h>
+#include <bits/stl_tree.h>
+#undef _GLIBCXX_VISIBILITY_ATTR
+#undef _GLIBCXX_VISIBILITY
+#define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ ("hidden")))
+#define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ ("hidden")))
+#include <map>
+#undef _GLIBCXX_VISIBILITY_ATTR
+#undef _GLIBCXX_VISIBILITY
+#define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY_ATTR`
+#define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY`
 
-#endif //ifndef HIDE_DALI_INTERNALS
+#endif // #ifdef __clang__
 
+#endif // #ifndef HIDE_DALI_INTERNALS
 
-#endif /* __DALI_MAP_H__ */
+#endif // DALI_MAP_WRAPPER_H
index e2eb2a3..13ad9f1 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef __DALI_SET_H__
-#define __DALI_SET_H__
+#ifndef DALI_SET_WRAPPER_H
+#define DALI_SET_WRAPPER_H
 
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  *
  */
 
-
-// EXTERNAL INCLUDES
-
 #ifndef HIDE_DALI_INTERNALS
 
-# include <set>
+#include <set>
 
 #else
 
+// Ensure that default visibility is used with any class that is used as an exception type
+#include <memory>
+#include <new>
+#include <stdexcept>
+
 #if defined(__clang__)
 
 #undef _LIBCPP_INLINE_VISIBILITY
 
 #else
 
+#include <bits/c++config.h>
+#include <bits/stl_tree.h>
+#undef _GLIBCXX_VISIBILITY_ATTR
+#undef _GLIBCXX_VISIBILITY
+#define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ ("hidden")))
+#define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ ("hidden")))
+#include <set>
+#undef _GLIBCXX_VISIBILITY_ATTR
+#undef _GLIBCXX_VISIBILITY
+#define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY_ATTR`
+#define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY`
 
-// ensure that default visibility is used with any class that is used as an exception type
-# include <memory>
-# include <new>
-# include <stdexcept>
-
-
-# include <bits/c++config.h>
-# include <bits/stl_tree.h>
-# undef _GLIBCXX_VISIBILITY_ATTR
-# define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ ("hidden")))
-# include <set>
-# undef _GLIBCXX_VISIBILITY_ATTR
-# define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY_ATTR`
-
-#endif //ifdef __clang__
+#endif // #ifdef __clang__
 
-#endif //ifndef HIDE_DALI_INTERNALS
+#endif // #ifndef HIDE_DALI_INTERNALS
 
-#endif /* __DALI_SET_H__ */
+#endif // DALI_SET_WRAPPER_H
index 05d6b6c..accc2db 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef __VECTOR_WRAPPER_H__
-#define __VECTOR_WRAPPER_H__
+#ifndef DALI_VECTOR_WRAPPER_H
+#define DALI_VECTOR_WRAPPER_H
 
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  *
  */
 
-// EXTERNAL INCLUDES
-#include <cstddef>
-
-// INTERNAL INCLUDES
-#include <dali/public-api/common/dali-common.h>
-
 #ifndef HIDE_DALI_INTERNALS
 
 #include <vector>
 
 #else
 
-// ensure that default visibility is used with any class that is used as an exception type
+// Ensure that default visibility is used with any class that is used as an exception type
 #include <memory>
 #include <new>
 #include <stdexcept>
 
 #include <bits/c++config.h>
 #undef _GLIBCXX_VISIBILITY_ATTR
+#undef _GLIBCXX_VISIBILITY
 #define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ ("hidden")))
+#define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ ("hidden")))
 #include <vector>
 #undef _GLIBCXX_VISIBILITY_ATTR
+#undef _GLIBCXX_VISIBILITY
 #define _GLIBCXX_VISIBILITY_ATTR(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY_ATTR`
+#define _GLIBCXX_VISIBILITY(V) __attribute__ ((__visibility__ (#V))) // restore `_GLIBCXX_VISIBILITY`
 
-#endif //ifdef __clang__
+#endif // #ifdef __clang__
 
-#endif //ifndef HIDE_DALI_INTERNALS
+#endif // #ifndef HIDE_DALI_INTERNALS
 
-#endif /* __VECTOR_WRAPPER__H__ */
+#endif // DALI_VECTOR_WRAPPER_H