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

Address Variable-Length-Array issue in USER-SMTBQ #1356

merged 6 commits into from Mar 5, 2019


None yet
2 participants
Copy link

akohlmey commented Mar 4, 2019


This addresses the non-C++ standard conforming use of variable-length arrays in the USER-SMTBQ package. This also fixes several memory leaks and uninitialized access to allocated storage.
The resulting code is now "valgrind-clean" (with standard OpenMP suppressions).

Related Issues

This closes #1329



By submitting this pull request, I agree, that my contribution will be included in LAMMPS and redistributed under either the GNU General Public License version 2 (GPL v2) or the GNU Lesser General Public License version 2.1 (LGPL v2.1).

Backward Compatibility


Implementation Notes

1d-variable length arrays are conveniently replaced by using std::vector<type> name([size]), and then using in case the pointer address is needed, e.g. for MPI calls.
For multi-dimensional arrays, the calls to the LAMMPS Memory class are used instead.

Post Submission Checklist

Please check the fields below as they are completed after the pull request has been submitted

  • The feature or features in this pull request is complete
  • Licensing information is complete
  • Corresponding author information is complete
  • The source code follows the LAMMPS formatting guidelines
  • Suitable new documentation files and/or updates to the existing docs are included
  • The added/updated documentation is integrated and tested with the documentation build system
  • The feature has been verified to work with the conventional build system
  • The feature has been verified to work with the CMake based build system
  • A package specific README file has been included or updated
  • One or more example input decks are included

Further Information, Files, and Links

Put any additional information here, attach relevant text or image files, and URLs to external sites (e.g. DOIs or webpages)

akohlmey added some commits Feb 28, 2019

@akohlmey akohlmey added this to the Stable Release Spring 2019 milestone Mar 4, 2019

@akohlmey akohlmey self-assigned this Mar 4, 2019

@akohlmey akohlmey requested review from rbberger, stanmoore1 and sjplimp Mar 4, 2019


sjplimp approved these changes Mar 4, 2019

Copy link

sjplimp left a comment

looks good

@akohlmey akohlmey merged commit 6b8a768 into lammps:master Mar 5, 2019

6 checks passed

lammps/pull-requests/cmake/new-cmake-serial-pr head run ended
lammps/pull-requests/new-build-docs-pr head run ended
lammps/pull-requests/new-kokkos-omp-pr head run ended
lammps/pull-requests/new-openmpi-pr head run ended
lammps/pull-requests/new-serial-pr head run ended
lammps/pull-requests/new-shlib-pr head run ended

@akohlmey akohlmey deleted the akohlmey:address-user-smtbq-vla-issue branch Mar 5, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.