https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #9 from Benjamin Schulz ---
Hi@all, thank you for your interesting replies.
I guess the problem for the mapper and templates is that there are no pragma
templates in C++. So this would probably indeed mean that one would have to
ch
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #8 from Tobias Burnus ---
> If you are asking for a new OpenMP feature, this is not the right forum,
> GCC bugzilla is for reporting bugs.
While I want to echo what Jakub wrote, I have nonetheless filed the OpenMP
specification issu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
Jakub Jelinek changed:
What|Removed |Added
Status|UNCONFIRMED |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #6 from Benjamin Schulz ---
Jakub Jelinek wrote:
> The reason why it is invalid is that T lookup fails in the declare mapper >
> definition.
Yes, And that exactly is the problem.
> #pragma omp declare mapper(myvec v) map(v, v.data
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #5 from Jakub Jelinek ---
The reason why it is invalid is that T lookup fails in the declare mapper
definition.
You can't take the T literally from the OpenMP standard, that is a a
non-literal for any type of certain properties.
Say
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #4 from Benjamin Schulz ---
Also the Openmp specification for mapper says:
https://www.openmp.org/spec-html/5.2/openmpsu61.html
A structure type T has a predefined default mapper that is defined as if by a
declare mapper
The quest
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #3 from Benjamin Schulz ---
oh of course withotu std, so
typedef myvec doublevec;
If one has to specify the datatype explicitly before one can use the openmp
mapper, then the mapper pragma of openmp makes not much sense with templ
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #2 from Benjamin Schulz ---
Hi there,
if that testcase is "invalid", then that means that the mapper statement does
not work with template classes at all
It would mean that for a struct with a template datatype
template
struct my
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120682
--- Comment #1 from Jakub Jelinek ---
Declare mapper support has been added to GCC for C++ only in GCC 16, with
r16-983-g48973e8783e59462ab6e34d5d48b74a2146a05f1
And your testcase is invalid and correctly rejected by trunk:
pr120682.C:8:34: erro