-
Notifications
You must be signed in to change notification settings - Fork 267
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compiling with NVHPC #1076
base: master
Are you sure you want to change the base?
Compiling with NVHPC #1076
Conversation
src/tools/MergeVectorTools.h
Outdated
#define PLMDAUTO typename C::value_type | ||
#else | ||
//I prefer letting gcc doing his work | ||
#define PLMDAUTO auto |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would avoid setting a macro PLMDAUTO
in a .h file which could be included somewhere else. I think this is fine also with gcc:
// nvc++ cannot deduce the type correctly
const typename C::value_type & top() const { return *fwdIt; }
Also, I recently noticed this also with icpc
installed on SISSA modules. So maybe it is a widespread bug
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would leave a comment like
// nvc++ and icpc do not deduce the type
otherwise sooner or later we will "fix it" back to "auto"
Description
In this PR I will set up some modifications to the code in order to make possible to compile all plumed with nvhpc v24.3.
As now is a work in progress, I do not know if the CI will even start and some regtests are failing on my pc, the PR is set up to check easily if the modifications do not break other compilers against the master branch.
Target release
I would like my code to appear in release 2.10
Type of contribution
Copyright
COPYRIGHT
file with the correct license information. Code should be released under an open source license. I also used the commandcd src && ./header.sh mymodulename
in order to make sure the headers of the module are correct.Tests