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
error: explicit instantiation of 'foo' does not refer to a functiontemplate, variable template, member function, member class, or static data member
16 | extern template foo1<float>foo();
note: candidate template ignored: target attributes do not match
8 | __device__ __host__ foo1<Out>foo()
error: explicit instantiation of 'foo' does not refer to a functiontemplate, variable template, member function, member class, or static data member
17 | extern template foo1<double>foo();
note: candidate template ignored: target attributes do not match
8 | __device__ __host__ foo1<Out>foo()
ArberSephirotheca
changed the title
getting false negative error by SYCLomatic when migrating external CUDA function template
getting false negative error by SYCLomatic when migrating external CUDA host device function template
Jul 23, 2024
I was wondering if this error hurt the later migration process even it is false negative? I tried to eliminate this error using user define rule to replace every extern template with empty line. However, the error still persist. it seems that user define rule is applied post migration? Can we decide when to apply the user define rule? (e.g. post migration vs pre migration)
@ArberSephirotheca, all user-defined rules are applied after the CUDA source code is parsed. Therefore, user-defined rules cannot eliminate the parsing error.
Describe the bug
When I try to migrate the code containing extern template
I got the following errors:
code after migration:
However, icpx is able to compile the migrated code without any issues.
To reproduce
Environment
Additional context
No response
The text was updated successfully, but these errors were encountered: