vtk-m/vtkm/internal
Kenneth Moreland 34b0bba842 Use C++11 attributes for VTKM_ALWAYS/NEVER_EXPORT
Previously, the `VTKM_ALWAYS_EXPORT` and `VTKM_NEVER_EXPORT` macros
used the gnu-specific `__attribute__` keyword. This change instead
uses the C++11 standard method of using `[[ ]]` as attributes.
Specifically, `__attribute(visibility("---"))` is changed to
`[[gnu::visibility("--")]]`.

The main impetus for this change is that `__attribute__` does not
seem to work with `[[deprecated]]` on GCC compilers. (For sure on
GCC 6. I didn't check all compiler versions.) This change was
recommended from
https://stackoverflow.com/questions/40886628/deprecated-attribute-visibility-default-in-gcc-6-2

This creates a minor backward incompatibility. We have always meant
for these macros to be used before the return type when used with
a function. However, GCC accepted placing `__attribute__` after
the return type. The C++11 `[[ ]]` cannot be placed there, so
some macros might have to be moved. Still, this was a broken
use that happened to work.
2019-12-05 13:55:54 -05:00
..
testing Update lists in TypeListTag.h 2019-12-05 11:05:19 -07:00
.gitattributes clang-format: apply to the entire tree 2017-05-25 07:51:37 -04:00
ArrayPortalHelpers.h Refactor IsWritableArrayHandle to use PortalSupportsSets. 2019-09-11 12:50:17 -04:00
ArrayPortalUniformPointCoordinates.h Update VTK-m code to use new Vec aliases 2019-07-31 12:55:40 -06:00
ArrayPortalValueReference.h Correct warnings found by GCC 9.2 2019-12-02 09:33:35 -05:00
ArrayPortalVirtual.h conslidate the license statement 2019-04-17 10:57:13 -06:00
Assume.h conslidate the license statement 2019-04-17 10:57:13 -06:00
brigand.hpp brigand: fix intel check 2019-02-14 16:26:14 -05:00
CMakeLists.txt Refactor deprecated macros 2019-11-06 14:47:59 -07:00
Configure.h.in Re-enable Visual Studio warning 4996 2019-11-06 09:59:00 -07:00
ConfigureFor32.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ConfigureFor64.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ConnectivityStructuredInternals.h Refactor topology mappings to clarify meaning. 2019-08-06 11:27:26 -04:00
ExportMacros.h Use C++11 attributes for VTKM_ALWAYS/NEVER_EXPORT 2019-12-05 13:55:54 -05:00
FunctionInterface.h Simplify FunctionInterface 2019-12-02 09:33:35 -05:00
FunctionInterfaceDetailPost.h Simplify FunctionInterface 2019-12-02 09:33:35 -05:00
FunctionInterfaceDetailPost.h.in Simplify FunctionInterface 2019-12-02 09:33:35 -05:00
FunctionInterfaceDetailPre.h Simplify FunctionInterface 2019-12-02 09:33:35 -05:00
FunctionInterfaceDetailPre.h.in Simplify FunctionInterface 2019-12-02 09:33:35 -05:00
IndexTag.h conslidate the license statement 2019-04-17 10:57:13 -06:00
IndicesExtrude.h Update VTK-m code to use new Vec aliases 2019-07-31 12:55:40 -06:00
Invocation.h conslidate the license statement 2019-04-17 10:57:13 -06:00
ListTagDetail.h Add vtkm::List 2019-12-04 17:13:56 -07:00
Unreachable.h conslidate the license statement 2019-04-17 10:57:13 -06:00
Variant.h Deprecate ListTag operations 2019-12-05 11:27:31 -05:00
VariantDetail.h Sprinkle noexcept goodness on Variant and ArrayPortalMultiplexer 2019-07-25 15:25:29 -06:00
VariantDetail.h.in Sprinkle noexcept goodness on Variant and ArrayPortalMultiplexer 2019-07-25 15:25:29 -06:00
Windows.h conslidate the license statement 2019-04-17 10:57:13 -06:00