delete four out-of-line declarations that repeat the class body

Each of these says again, outside the class, what the class already declares:

    template <int N>
    void TestTableTemplate<N>::SetRefresh();

SetRefresh and Init are declared as members a few dozen lines above, so these
add nothing. A member named out of line has to be a definition; MSVC lets the
declaration through, clang does not.

None of the three templates ever defines these members generically. Every
instantiation supplies its own, as an explicit specialization next to the
screen that uses it, and those are untouched:

    template<> void DropDownTemplate<DROPDOWNNR_APPEARANCE>::SetRefresh()
                                            { gfIMPPrejudice_Redraw = TRUE; }

The mpSelf lines that follow each of these look similar but are definitions of
a static data member, so they stay.

Verification:

    grep -rn 'Template<N>::' --include=*.h Laptop/    # only mpSelf definitions
    ninja -C build parse         # out-of-line class gone: 28 -> 24 sites
    ninja -C build -k 0          # Release, four applications, green
    ninja -C build-debug -k 0    # Debug, four applications, green

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Marco Antonio J. Costa
2026-07-23 19:29:55 -03:00
committed by majcosta
co-authored by Claude Opus 4.8
parent 1bf28bc07a
commit e7095999df
2 changed files with 0 additions and 12 deletions
-9
View File
@@ -448,12 +448,6 @@ private:
void operator=(TestTableTemplate const&);
};
template <int N>
void TestTableTemplate<N>::SetRefresh();
template <int N>
void TestTableTemplate<N>::Init( UINT16 sX, UINT16 sY, UINT16 sX_End, UINT16 sY_End );
template <int N>
void* TestTableTemplate<N>::mpSelf = NULL;
@@ -520,9 +514,6 @@ private:
void operator=(TabBoxTemplate const&);
};
template <int N>
void TabBoxTemplate<N>::SetRefresh( );
template <int N>
void* TabBoxTemplate<N>::mpSelf = NULL;
-3
View File
@@ -417,9 +417,6 @@ private:
void operator=(DropDownTemplate const&);
};
template <int N>
void DropDownTemplate<N>::SetRefresh();
template <int N>
void* DropDownTemplate<N>::mpSelf = NULL;