QMCPACK / QMCPACK/qmcpack

In DistanceTable implementations Memory pool and Container element type must match but are defined via different type aliases or template parameters.

Open
#3,297 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
403
Forks
154
Avg merge
1d 12h
Merged PRs (30d)
82

Description

This is a bug in waiting it doesn't cause an issue yet.

agreement between template parameter T and RealType in distance tables only coincidentally matches.
See
`SoaDistanceTableAA` and related classes.

This occurs do to excessively long and somewhat arbitrary type alias chaining through the class hiearchy #913. I believe that if this fell out of agreement code could still compile but seriously off memory accesses could occur.

The fix is probably as simple as just making the memory pools of type T and not RealType. Then reviewing whether use of RealType from down in the inheritance chain really makes sense.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.