Skip to content

Commit 89e4bf1

Browse files
authored
Add override for virtual functions which are overriden (#1261)
* Enable warnings for non-virtual destructors and missing overrides; add override and virtual destructors to remove warnings * .git-blame-ignore-revs
1 parent 1c3fa2e commit 89e4bf1

14 files changed

+38
-25
lines changed

.git-blame-ignore-revs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
1+
# Enable warnings for non-virtual destructors and missing overrides; add override and virtual destructors to remove warnings
2+
f150d6f7db2d71f4a77720ee7e7a7385a57bf540
3+
14
# Initial cmake-format fixes
25
1c149870b806f5412c34c918cea96caa14720f3c

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ esac
6262

6363
SST_CHECK_PICKY
6464
AS_IF([test "x$use_picky" = "xyes"],
65-
[WARNFLAGS="-Wall -Wextra -Wvla"],
65+
[WARNFLAGS="-Wall -Wextra -Wvla -Wnon-virtual-dtor -Wsuggest-override"],
6666
[WARNFLAGS=""])
6767
CFLAGS="$CFLAGS $WARNFLAGS"
6868
CXXFLAGS="$CXXFLAGS $WARNFLAGS"

src/sst/core/impl/timevortex/timeVortexPQ.cc

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,10 @@ class TimeVortexPQ : public TimeVortexPQBase<false>
153153
TimeVortexPQ() : TimeVortexPQBase<false>() {} // For serialization only
154154
~TimeVortexPQ() {}
155155

156-
void serialize_order(SST::Core::Serialization::serializer& ser) { TimeVortexPQBase<false>::serialize_order(ser); }
156+
void serialize_order(SST::Core::Serialization::serializer& ser) override
157+
{
158+
TimeVortexPQBase<false>::serialize_order(ser);
159+
}
157160

158161
SST_ELI_EXPORT(TimeVortexPQ)
159162
};
@@ -175,7 +178,10 @@ class TimeVortexPQ_ts : public TimeVortexPQBase<true>
175178
TimeVortexPQ_ts() : TimeVortexPQBase<true>() {} // For serialization only
176179
~TimeVortexPQ_ts() {}
177180
178-
void serialize_order(SST::Core::Serialization::serializer& ser) { TimeVortexPQBase<true>::serialize_order(ser); }
181+
void serialize_order(SST::Core::Serialization::serializer& ser) override
182+
{
183+
TimeVortexPQBase<true>::serialize_order(ser);
184+
}
179185
180186
SST_ELI_EXPORT(TimeVortexPQ_ts)
181187
};

src/sst/core/interfaces/stdMem.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1538,7 +1538,10 @@ class StandardMem : public SubComponent
15381538
/**
15391539
* Serialization function
15401540
*/
1541-
virtual void serialize_order(SST::Core::Serialization::serializer& ser) { SST::SubComponent::serialize_order(ser); }
1541+
void serialize_order(SST::Core::Serialization::serializer& ser) override
1542+
{
1543+
SST::SubComponent::serialize_order(ser);
1544+
}
15421545
};
15431546

15441547
} // namespace SST::Interfaces

src/sst/core/testElements/coreTest_ClockerComponent.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ class coreTestClockerComponent : public SST::Component
4747
)
4848

4949
coreTestClockerComponent(SST::ComponentId_t id, SST::Params& params);
50-
void setup() {}
51-
void finish() {}
50+
void setup() override {}
51+
void finish() override {}
5252

5353
private:
5454
coreTestClockerComponent(); // for serialization only

src/sst/core/testElements/coreTest_DistribComponent.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ class coreTestDistribComponent : public SST::Component
5757
)
5858

5959
coreTestDistribComponent(SST::ComponentId_t id, SST::Params& params);
60-
void finish();
61-
void setup() {}
60+
void finish() override;
61+
void setup() override {}
6262

6363
private:
6464
coreTestDistribComponent(); // for serialization only

src/sst/core/testElements/coreTest_Links.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ class coreTestLinks : public SST::Component
5353
coreTestLinks(SST::ComponentId_t id, SST::Params& params);
5454
~coreTestLinks() = default;
5555

56-
void setup() {}
57-
void finish() {}
56+
void setup() override {}
57+
void finish() override {}
5858

5959
private:
6060
int my_id;

src/sst/core/testElements/coreTest_MessageGeneratorComponent.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ class coreTestMessageGeneratorComponent : public SST::Component
5050
)
5151

5252
coreTestMessageGeneratorComponent(SST::ComponentId_t id, SST::Params& params);
53-
void setup() {}
54-
void finish()
53+
void setup() override {}
54+
void finish() override
5555
{
5656
fprintf(stdout, "Component completed at: %" PRIu64 " milliseconds\n", (uint64_t)getCurrentSimTimeMilli());
5757
}

src/sst/core/testElements/coreTest_ParamComponent.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ class coreTestParamComponent : public SST::Component
5858

5959
coreTestParamComponent(SST::ComponentId_t id, SST::Params& params);
6060
~coreTestParamComponent() {}
61-
void setup() {}
62-
void finish() {}
61+
void setup() override {}
62+
void finish() override {}
6363

6464
private:
6565
coreTestParamComponent(); // for serialization only

src/sst/core/testElements/coreTest_PerfComponent.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,8 +99,8 @@ class coreTestPerfComponent : public coreTestPerfComponentBase2
9999
coreTestPerfComponent(SST::ComponentId_t id, SST::Params& params);
100100
~coreTestPerfComponent();
101101

102-
void setup() {}
103-
void finish() { printf("Perf Test Component Finished.\n"); }
102+
void setup() override {}
103+
void finish() override { printf("Perf Test Component Finished.\n"); }
104104

105105
private:
106106
coreTestPerfComponent(); // for serialization only

0 commit comments

Comments
 (0)