Skip to content
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

[FIX] Moving the checkArgumentType error to its caller #1168

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Iximiel
Copy link
Member

@Iximiel Iximiel commented Dec 18, 2024

Description

This is the PR about the problem I saw in #1167 and #1166

I think that the intended use of the original change I am fixing was to change the warning into an error, since I saw that it generates SEGFAULTs in case of keeping it as
a warning.

But the plumed_merror in the Keywords scope lose the information of having the information of the "culprit action" (and I think that plumed_merror is deprecated in favour of plumed_error, right?). So I simply changed the ->warning into an ->error to have the name of the action that arises the problem

I think this is more a "dev-side" problem than a "user-input" one, but it is still better to state to the user what is the action that may cause the error, since it can be "workarounded" as I did in #1166

checkArgumentType is only used in a single instance, so I think the modification is safe:

>git grep -n checkArgumentType
src/core/ActionWithArguments.cpp:195:    if( !readact->keywords.checkArgumentType( arg[i]->getRank(), arg[i]->hasDerivatives() ) ) {
src/tools/Keywords.cpp:693:bool Keywords::checkArgumentType( const std::size_t& rank, const bool& hasderiv ) const {
src/tools/Keywords.h:191:  bool checkArgumentType( const std::size_t& rank, const bool& hasderiv ) const ;
Target release

I would like my code to appear in release I ma targetting master but maybe v2.10 may be better?

Type of contribution
  • changes to code or doc authored by PLUMED developers, or additions of code in the core or within the default modules
  • changes to a module not authored by you
  • new module contribution or edit of a module authored by you
Copyright
  • I agree to transfer the copyright of the code I have written to the PLUMED developers or to the author of the code I am modifying.
  • the module I added or modified contains a COPYRIGHT file with the correct license information. Code should be released under an open source license. I also used the command cd src && ./header.sh mymodulename in order to make sure the headers of the module are correct.
Tests
  • I added a new regtest or modified an existing regtest to validate my changes.
  • I verified that all regtests are passed successfully on GitHub Actions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant