Hello,
I'm using Boost 1.42, IBM XL C++ 10.1, and AIX 5.3.
I'm running into trouble building code that uses Boost.PropertyTree. I get errors compiling the following code, which works fine on numerous other platforms:
boost::property_tree::ptree pt;
pt.put(LOG_FILE_KEY, props.log_file_name());
pt.put(LOG_LEVEL_KEY, props.log_level());
pt.put(LOG_NAME_KEY, props.log_name());
pt.put(LOG_FILE_SIZE_MAX_KEY, props.log_file_max_size());
pt.put(LOG_TO_CONSOLE_KEY, props.log_to_console());
pt.put(MESSAGE_MAX_KEY, props.message_max_size());
pt.put(SCAN_THREADS_KEY, props.scan_threads());
std::ostringstream prop_info;
boost::property_tree::ini_parser::write_ini(prop_info, pt);
The errors, all of which are attributed to the last line of code above, are:
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 55.28: 1540-0129 (S) The qualifier "subs" is not defined in the current scope.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 78.34: 1540-0129 (S) The qualifier "subs" is not defined in the current scope.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 91.42: 1540-0716 (S) The template argument "boost::iterator" does not match the template parameter "class Iterator".
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 101.42: 1540-0274 (S) The name lookup for "const_iterator" did not find a declaration.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 101.42: 1540-1226 (I) Declarations for non-dependent names are resolved in the template definition.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 101.42: 1540-1227 (I) "const_iterator" does not depend on a template argument.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 116.51: 1540-0129 (S) The qualifier "subs" is not defined in the current scope.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 138.45: 1540-0129 (S) The qualifier "subs" is not defined in the current scope.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/detail/ptree_implementation.hpp", line 78.34: 1540-0129 (S) The qualifier "subs" is not defined in the current scope.
"/home/wmason/src/cap-aix/fim/../opt/include/aix/boost/v1.42/boost/property_tree/ini_parser.hpp", line 231.45: 1540-0700 (I) The previous message was produced while processing "class boost::property_tree::basic_ptree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::basic_string<char,std::char_traits<char>,std::allocator<char> >,struct std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >::const_iterator".
The release notes for Boost 1.42 at
http://www.boost.org/users/news/version_1_42_0 claim that my combination of OS, compiler and Boost version are supported. I was wondering if anyone might know of a way around this problem besides not using Boost.PropertyTree.
Thanks very much for any help,
Will