Comeau is just being aggressive.

The standard says that a template type argument may be an incomplete type. (14.3.1.2)

Soma