|
Boost Users : |
Subject: [Boost-users] Property tree custom_data_type.cpp fails to compile in boost 1.42.
From: Mauricio Gomes (mgpensar_at_[hidden])
Date: 2010-02-17 10:06:17
The example C:\boost_1_42_0\libs\property_tree\examples\custom_data_type.cpp
fails to compile for me.
I am using Code::Blocks 8.02 with mingw gcc 4.4.0.
I am getting the following error message:
||=== test, Debug ===|
C:\projects\test\main2.cpp||In function 'int main()':|
C:\projects\test\main2.cpp|59|error: wrong number of template arguments (5,
should be 3)|
C:\boost_1_42_0\boost\property_tree\ptree_fwd.hpp|29|error: provided for
'template<class Key, class Data, class KeyCompare> class
boost::property_tree::basic_ptree'|
C:\projects\test\main2.cpp|59|error: invalid type in declaration before ';'
token|
C:\projects\test\main2.cpp|63|error: request for member 'put' in 'pt', which
is of non-class type 'my_ptree'|
C:\projects\test\main2.cpp|64|error: request for member 'get' in 'pt', which
is of non-class type 'my_ptree'|
C:\projects\test\main2.cpp|64|error: expected primary-expression before
'int'|
C:\projects\test\main2.cpp|64|error: expected ',' or ';' before 'int'|
C:\projects\test\main2.cpp|68|error: request for member 'put' in 'pt', which
is of non-class type 'my_ptree'|
C:\projects\test\main2.cpp|68|error: expected primary-expression before '>'
token|
C:\projects\test\main2.cpp|68|warning: left-hand operand of comma has no
effect|
C:\projects\test\main2.cpp|69|error: request for member 'get' in 'pt', which
is of non-class type 'my_ptree'|
C:\projects\test\main2.cpp|69|error: expected primary-expression before '>'
token|
C:\projects\test\main2.cpp|74|error: request for member 'put' in 'pt', which
is of non-class type 'my_ptree'|
C:\projects\test\main2.cpp|74|error: expected primary-expression before '>'
token|
C:\projects\test\main2.cpp|74|warning: left-hand operand of comma has no
effect|
C:\projects\test\main2.cpp|75|error: request for member 'get' in 'pt', which
is of non-class type 'my_ptree'|
C:\projects\test\main2.cpp|75|error: expected primary-expression before '>'
token|
||=== Build finished: 15 errors, 2 warnings ===|
The problem seems to be the number of template parameters in line 59:
// Property_tree with boost::any as data type
// Key comparison: std::less<std::string>
// Key type: std::string
// Path type: path
// Data type: boost::any
// Translator type: my_translator
typedef basic_ptree<std::less<std::string>, std::string, path,
boost::any, my_translator> my_ptree;
my_ptree pt;
Am I missing something ?
Thanks for your attention,
-- Mauricio Gomes Pensar Digital 55-11-9698-1683 (Brazil - mobile)
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net