error: forming reference to void

John Love-Jensen eljay@adobe.com
Mon Sep 24 19:07:00 GMT 2007


Hi Arturs,

> The question is, why gcc tries to resolve "operator *()" at variable
> declaration time, but not at operator invocation time? Yeah, *(void*) is
> meaningless, but so is (int)->.

I may be mistaken, but I think the methods of the instantiated template are
created when the template is instantiated, not when those methods are used.

In the case you've run into, a template specialization would be the
appropriate way to handle this situation.

HTH,
--Eljay



More information about the Gcc-help mailing list