2.1.57. ‑‑[no_]guiding_decls
This option enables or disables the recognition of guiding declarations for template functions in C++.
A guiding declaration is a function declaration that matches an instance of a function template but has no explicit definition because its definition derives from the function template.
If ‑‑no_guiding_decls is combined with ‑‑old_specializations, a specialization of a non‑member template function is not recognized. It is treated as a definition of an independent function.
Note
The option --guiding_decls is provided only as a migration aid for legacy source code that does not conform to the C++ standard. Its use is not recommended.
This option is effective only if the source language is C++.
The default is ‑‑no_guiding_decls.
template <class T> void f(T)
{
...
}
void f(int);
When regarded as a guiding declaration, f(int) is an instance of the template. Otherwise, it is an independent function so you must supply a definition.