Skip to content

Commit 4f59f50

Browse files
committed
Fixed clang compilation warnings about delete GrandOrgue#2001
1 parent 719c1a1 commit 4f59f50

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

src/core/ptrvector.h

+7-7
Original file line numberDiff line numberDiff line change
@@ -19,20 +19,20 @@ template <class T> class ptr_vector : protected std::vector<T *> {
1919
template <
2020
typename T1,
2121
std::enable_if_t<std::is_array<T1>::value, bool> = true>
22-
inline static void destroyE(T1 *e) {
22+
inline static void delete0(T1 *e) {
2323
delete[] e;
2424
}
2525

2626
template <
2727
typename T1,
28-
std::enable_if_t<std::is_array<T1>::value, bool> = false>
29-
inline static void destroyE(T1 *e) {
28+
std::enable_if_t<!std::is_array<T1>::value, bool> = true>
29+
inline static void delete0(T1 *e) {
3030
delete e;
3131
}
3232

33-
inline static void deleteEl(T *e) {
33+
inline static void delete1(T *e) {
3434
if (e)
35-
destroyE<T>(e);
35+
delete0(e);
3636
}
3737

3838
public:
@@ -43,7 +43,7 @@ template <class T> class ptr_vector : protected std::vector<T *> {
4343

4444
~ptr_vector() {
4545
for (auto &e : (*this))
46-
deleteEl(e);
46+
delete1(e);
4747
}
4848

4949
T *&operator[](unsigned pos) { return at(pos); }
@@ -61,7 +61,7 @@ template <class T> class ptr_vector : protected std::vector<T *> {
6161
void resize(unsigned new_size) {
6262
unsigned oldsize = size();
6363
for (unsigned i = new_size; i < oldsize; i++)
64-
deleteEl(at(i));
64+
delete1(at(i));
6565
std::vector<T *>::resize(new_size);
6666
for (unsigned i = oldsize; i < new_size; i++)
6767
at(i) = nullptr;

0 commit comments

Comments
 (0)