Re: Can't make "Implicit Typename Deprecated" warning go away

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




This turned out to be a typo on my part. The typedef declaration should have been:


 typedef typename HashTable<KEY_T, DATA_T>::iterator MyIterator;

Sorry for the noise.

Hi,

I'm using gcc 3.3.3 on Linux, and compiling the following code:

template < typename KEY_T, typename DATA_T >
inline HashTable< KEY_T, DATA_T >::iterator
HashTable< KEY_T, DATA_T >::find( const KeyType& key )
{
   SizeType bucket;
   NodeType* node;
//etc

Gives the following warnings:

HashTable_tmpl.cpp:170: warning: `HashTable<KEY_T, DATA_T>::iterator' is implicitly a typename
HashTable_tmpl.cpp:170: warning: implicit typename is deprecated, please see the documentation for details


I changed the line that begins with inline to include the 'typename' keyword immediately after the inline keyword,
as described in http://gcc.gnu.org/ml/gcc/2003-06/msg00978.html, but that makes no difference, the warning still
shows up. I also tried adding the following typedef to the HashTable class definition:


typedef typename HashTable<KEY_T, DATA_T>::iterator;

but that makes no difference as well. Can anyone point out what I'm missing ?

Thanks,
Colm.





[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux