Skip to content

Remove every use of "mutable" in ACTS

As merge request !247 (closed) is getting too big, I propose to break it down in smaller iterations. Intermediary merge requests will feel less satisfactory (for example, this iteration adds lost of const_casts and non-const accessors), but they will also be much easier for me to maintain and for you to review.

What this merge request does:

  • Remove every occurence of the "mutable" keyword in ACTS
  • Replace many const-incorrect method signatures (e.g. const setters) with const-correct ones
  • Eliminate const-hostile patterns such as lazy initialization
  • Deal with const-incorrect use of pointer-to-const by using const_cast and const_pointer_cast

What will wait for a later merge request:

  • Replace const-incorrect pointers with const-correct ones, thusly eliminating const_casts
  • Replace some terrible interfaces (e.g. accessors returning non-const references) with better replacements

This fixes ACTS-256.

Merge request reports