Opened 13 years ago

Closed 13 years ago

#3413 closed Bugs (fixed)

Error with forward declaration of stdext::hash_map

Reported by: Piotr Wyderski <piotr.wyderski@…> Owned by: Joel de Guzman
Milestone: Boost 1.41.0 Component: spirit
Version: Boost 1.40.0 Severity: Problem
Keywords: Cc:

Description

Below is a thread which describes exactly the same error I've encountered in Boost 1.40. There also is a patch to fix this issue

http://www.nabble.com/-Spirit2--Error-with-forward-declaration-of-stdext::hash_map.-td21818384.html

The correct code should be for is_std_hash_map.hpp:

namespace boost {

template<class T> struct is_std_hash_map

: boost::mpl::false_

{};

template<

class Kty

, class Ty , class Tr , class Alloc

struct is_std_hash_map< ::stdext::hash_map<Kty,Ty,Tr,Alloc> >

: boost::mpl::true_

{};

template<class T> struct is_std_hash_multimap

: boost::mpl::false_

{};

template<

class Kty

, class Ty , class Tr , class Alloc

struct is_std_hash_multimap< ::stdext::hash_multimap<Kty,Ty,Tr,Alloc> >

: boost::mpl::true_

{};

}

The correct code for std_hash_map_fwd.hpp:

namespace stdext {

template<

class Kty

, class Ty , class Tr , class Alloc

class hash_map;

template<

class Kty

, class Ty , class Tr , class Alloc

class hash_multimap;

}

Change History (2)

comment:1 by Steven Watanabe, 13 years ago

Component: Nonespirit
Owner: set to Joel de Guzman

I thought that I had fixed this in the trunk. Looks like it was never merged.

comment:2 by Steven Watanabe, 13 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.