Ich habe Nutzung gesehen wie:Deklarieren einen unvollständigen Typ Template-Parameter in in-der Argumentliste
boost::error_info<struct tag_name, std::string> name_info;
Hier tag_name
Namen ein unvollständiger Typ und die struct
Schlüsselwort vorhergehenden er es an Ort und Stelle zu erklären scheint, statt der etwas mehr wortreich:
struct tag_name;
boost::error_info<tag_name, std::string> name_info;
Was ist der relevante Teil des Standards, der dies erlaubt?