You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jan 26, 2024. It is now read-only.
There is a global #define __local in device_library_decls.h. This symbol is already used by some libcxx templates. Building (and depending on) libcxx with the (soon to be default) _LIBCPP_REMOVE_TRANSITIVE_INCLUDES macro causes these templates to break, as the define leaks into them:
In file included from hip_example/example.cpp:5:
In file included from external/rules_ll~override~rules_ll_dependencies~hip/include/hip/hip_runtime.h:62:
In file included from external/rules_ll~override~rules_ll_dependencies~hipamd/include/hip/amd_detail/amd_hip_runtime.h:380:
In file included from external/rules_ll~override~rules_ll_dependencies~hipamd/include/hip/amd_detail/amd_math_functions.h:32:
In file included from external/llvm-project-overlay~17-init-bcr.2~llvm_project_overlay~llvm-project/libcxx/include/algorithm:1732:
external/llvm-project-overlay~17-init-bcr.2~llvm_project_overlay~llvm-project/libcxx/include/__algorithm/copy_backward.h:72:58: error: expected unqualified-id
__result = std::__copy_backward<_AlgPolicy>(_Traits::__local(__first), _Traits::__end(__slast), std::move(__result))
^
external/rules_ll~override~rules_ll_dependencies~hipamd/include/hip/amd_detail/device_library_decls.h:121:17: note: expanded from macro '__local'
#define__local__attribute__((address_space(3)))
^
An ad-hoc fix is to rename the define to something like __device_local or to write out the attribute. However, I'm not sure whether the __local macro is used in the wider ROCm ecosystem.
The text was updated successfully, but these errors were encountered:
There is a global
#define __local
indevice_library_decls.h
. This symbol is already used by some libcxx templates. Building (and depending on) libcxx with the (soon to be default)_LIBCPP_REMOVE_TRANSITIVE_INCLUDES
macro causes these templates to break, as the define leaks into them:https://github.com/ROCm-Developer-Tools/hipamd/blob/4209792929ddf54ba9530813b7879cfdee42df14/include/hip/amd_detail/device_library_decls.h#L120-L125
An ad-hoc fix is to rename the define to something like
__device_local
or to write out the attribute. However, I'm not sure whether the__local
macro is used in the wider ROCm ecosystem.The text was updated successfully, but these errors were encountered: