「view this page in B3 βῆτα server」

Revisions №436

branch: rosetta:release 「№436」
Commited by: lyskov-ai
GitHub commit link: 「0b048cf831fd1e3f」
Difference from previous tested commit:  code diff
Commit date: 2026-07-03 14:43:30
linux.clang linux.gcc linux.srlz mac.clang
debug
release
unit
PyRosetta.unit icc.icc.build.debug mysql postgres mpi mpi.serialization OpenCL build.header build.levels static serialization performance profile m1.clang.python310.release.PyRosetta.MinSizeRel m1.clang.python311.release.PyRosetta.MinSizeRel m1.clang.python312.release.PyRosetta.MinSizeRel m1.clang.python313.release.PyRosetta.MinSizeRel m1.clang.python314.release.PyRosetta.MinSizeRel m1.clang.python39.release.PyRosetta.MinSizeRel mac.clang.python310.release.PyRosetta.MinSizeRel mac.clang.python311.release.PyRosetta.MinSizeRel mac.clang.python312.release.PyRosetta.MinSizeRel mac.clang.python313.release.PyRosetta.MinSizeRel mac.clang.python314.release.PyRosetta.MinSizeRel mac.clang.python39.release.PyRosetta.MinSizeRel ubuntu.clang.python310.release.PyRosetta.MinSizeRel ubuntu.clang.python311.release.PyRosetta.MinSizeRel ubuntu.clang.python312.release.PyRosetta.MinSizeRel ubuntu.clang.python313.release.PyRosetta.MinSizeRel ubuntu.clang.python314.release.PyRosetta.MinSizeRel ubuntu.clang.python37.release.PyRosetta.MinSizeRel ubuntu.clang.python38.release.PyRosetta.MinSizeRel ubuntu.clang.python39.release.PyRosetta.MinSizeRel m1.clang.cxx11thread.serialization.python310.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python311.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python312.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python313.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python314.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python39.release.PyRosetta.Release m1.clang.python310.release.PyRosetta.Release m1.clang.python311.release.PyRosetta.Release m1.clang.python312.release.PyRosetta.Release m1.clang.python313.release.PyRosetta.Release m1.clang.python314.release.PyRosetta.Release m1.clang.python39.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python310.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python311.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python312.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python313.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python314.release.PyRosetta.Release mac.clang.cxx11thread.serialization.python39.release.PyRosetta.Release mac.clang.python310.release.PyRosetta.Release mac.clang.python311.release.PyRosetta.Release mac.clang.python312.release.PyRosetta.Release mac.clang.python313.release.PyRosetta.Release mac.clang.python314.release.PyRosetta.Release mac.clang.python39.release.PyRosetta.Release ubuntu-20.04.clang.cxx11thread.serialization.python314.release.PyRosetta.Release ubuntu.clang.cxx11thread.serialization.python310.release.PyRosetta.Release ubuntu.clang.cxx11thread.serialization.python311.release.PyRosetta.Release ubuntu.clang.cxx11thread.serialization.python312.release.PyRosetta.Release ubuntu.clang.cxx11thread.serialization.python313.release.PyRosetta.Release ubuntu.clang.cxx11thread.serialization.python39.release.PyRosetta.Release ubuntu.clang.python310.release.PyRosetta.Release ubuntu.clang.python311.release.PyRosetta.Release ubuntu.clang.python312.release.PyRosetta.Release ubuntu.clang.python313.release.PyRosetta.Release ubuntu.clang.python314.release.PyRosetta.Release ubuntu.clang.python37.release.PyRosetta.Release ubuntu.clang.python38.release.PyRosetta.Release ubuntu.clang.python39.release.PyRosetta.Release m1.clang.cxx11thread.serialization.python310.release.PyRosetta.conda.Release m1.clang.cxx11thread.serialization.python311.release.PyRosetta.conda.Release m1.clang.cxx11thread.serialization.python312.release.PyRosetta.conda.Release m1.clang.cxx11thread.serialization.python313.release.PyRosetta.conda.Release m1.clang.cxx11thread.serialization.python314.release.PyRosetta.conda.Release m1.clang.cxx11thread.serialization.python39.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python310.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python311.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python312.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python313.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python314.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python38.release.PyRosetta.conda.Release mac.clang.cxx11thread.serialization.python39.release.PyRosetta.conda.Release ubuntu-20.04.clang.cxx11thread.serialization.python314.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python310.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python311.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python312.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python313.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python38.release.PyRosetta.conda.Release ubuntu.clang.cxx11thread.serialization.python39.release.PyRosetta.conda.Release release.PyRosetta.documentation m1.clang.static.release.binary mac.clang.static.release.binary ubuntu.gcc.static.release.binary m1.clang.cxx11thread.serialization.python312.release.rosetta.conda.release mac.clang.cxx11thread.serialization.python312.release.rosetta.conda.release ubuntu.clang.cxx11thread.serialization.python312.release.rosetta.conda.release release.rosetta.documentation release.source scripts.pyrosetta scripts.rosetta.parse scripts.rosetta.validate scripts.rosetta.verify m1.clang.python39.unit util.apps

Drop template-id from ctor/dtor names in numeric/ (GCC 14/15 -Werror=template-id-cdtor) (#723) ## Summary GCC 14+ enforces `-Werror=template-id-cdtor`: a class template may not name its own constructors or destructors with explicit template arguments — the injected-class-name must be used without `<...>`. `numeric/MathVector.hh`, `numeric/MathMatrix.hh`, and `numeric/histograms/OneDHistogram.hh` declared constructors (and, for the first two, the destructor) in the disallowed form, e.g.: ```cpp MathVector< T>() : ... explicit MathVector< T>( const Size SIZE, ... ) : ... ~MathVector< T>() { ... } OneDHistogram<key1>()= default; ``` Under GCC 14/15 in C++20 mode this fails to compile (`error: template-id not allowed for constructor/destructor in C++20`). The `numeric/` occurrences broke the plain library debug build before it could even reach `basic/` or `core/`. The `OneDHistogram.hh` occurrence is more subtle: its default constructor is only instantiated by a unit test (`numeric/histograms/OneDHistogram.cxxtest.hh`), not by any library code, so it slipped past a library-only build and only surfaced when building/running the unit test suite — this is what broke CI on the previous version of this PR. This drops the `< T>` / `<key1>` from the constructor and destructor declarator-ids, making them consistent with the copy constructors in the same classes, which already use the correct injected-class-name form. Return types, operators, and `new` expressions that legitimately use the templated name are untouched. Pure syntactic correction, no semantic change. Verified with a clean `mode=debug` library build **and** `mode=debug cat=test` unit-test build under GCC 15 (this machine's default), plus a full library build under GCC 14 — both fully green. A targeted scan of `source/src`, `source/test`, and `source/src/devel` for the same declaration pattern turned up no other occurrences. ## Relationship to existing GCC 15 PRs (#555, #556) This is not the first attempt at the GCC 15 build. Two earlier community PRs are still open and overlap with this one: - **#555 — "Fix C++20 template-id errors in constructors/destructors"** (@saberger). This contains the **identical** MathVector/MathMatrix/OneDHistogram template-id fix as this PR, and additionally covers `core/scoring/lkball/LK_DomeEnergy.cc`, `protocols/forge/remodel/RemodelGlobalFrame.cc`, `utility/options/VectorOption_T_.hh`, two unit tests, and `tools/build/basic.settings` — none of which have this same template-id-cdtor pattern currently (checked directly), so those are addressing separate GCC 15 issues. - **#556 — "Fixes for compiling with gcc15"** (@roccomoretti). The broader assorted GCC 15 fixes. Does not touch these three files. Because #555 already lands the same fix, #723 is largely redundant with the `numeric/` slice of that effort. It's offered as a minimal, narrowly-scoped version of just the `template-id-cdtor` correction in case it's useful to merge the build-blocking part independently; otherwise #555 (combined with #556, per its author's note) supersedes it. Closing this in favor of #555 + #556 is fine if the maintainers prefer to consolidate the GCC 15 work. ## Note on diff size This is a small change (three files, ~18 lines) — below the usual bundling threshold — but it is the complete fix for this pattern across the codebase: a scan of `source/src`, `source/test`, and `source/src/devel` found no other occurrences of a class template naming its own constructor/destructor with a template-id. Kept narrowly scoped to this one toolchain-compatibility pattern.

...
Test: mac.clang.cxx11thread.serialization.python312.release.rosetta.conda.release

 View log

Loading...

 View log in dialog  View log in log in separate window