Boost logo

Boost Users :

Subject: [Boost-users] Simple inclusion of (1.47.0) filesystem.hpp generates compiler errors.
From: Bill Moo (cppsysdev_at_[hidden])
Date: 2011-08-17 07:05:03


Hello Users,

Qt v4.7.2
Boost v1.47.0.
Intel Compiler v 12.0.1029.2010
Windows 7 Ultimate N x64
Building an x64 Release binary

I have just included the boost/filesystem.hpp file in to my application and
re-compiled only for the compiler to generate these errors.

As yet I am not using any of the functionality of this I just included the
file. Is this another Intel / MSVC STL issue?

Sorry for the dump but without it I assume you won't be able to help.

..\Includes\boost/filesystem/v3/operations.hpp(126): error: expected either
a definition or a tag name
    BOOST_SCOPED_ENUM_START(copy_option)
    ^
..\Includes\boost/filesystem/v3/operations.hpp(127): error: expected an
identifier
      {none, fail_if_exists = none, overwrite_if_exists};
      ^
..\Includes\boost/filesystem/v3/operations.hpp(127): error: expected a ";"
      {none, fail_if_exists = none, overwrite_if_exists};
      ^
..\Includes\boost/filesystem/v3/operations.hpp(150): error: identifier
"copy_option" is undefined
                      BOOST_SCOPED_ENUM(copy_option) option, // See ticket
#2925
                      ^
..\Includes\boost/filesystem/v3/operations.hpp(299): error: identifier
"copy_option" is undefined
                   BOOST_SCOPED_ENUM(copy_option) option)
                   ^
..\Includes\boost/filesystem/v3/operations.hpp(303): error: name followed by
"::" must be a class or namespace name
                                         {detail::copy_file(from, to,
copy_option::fail_if_exists);}
                                                                      ^
..\Includes\boost/filesystem/v3/operations.hpp(306): error: identifier
"copy_option" is undefined
                   BOOST_SCOPED_ENUM(copy_option) option,
system::error_code& ec)
                   ^
..\Includes\boost/filesystem/v3/operations.hpp(310): error: name followed by
"::" must be a class or namespace name
                                         {detail::copy_file(from, to,
copy_option::fail_if_exists, &ec);}
                                                                      ^
..\Includes\boost/filesystem/v3/operations.hpp(642): error: expected either
a definition or a tag name
    BOOST_SCOPED_ENUM_START(symlink_option)
    ^
..\Includes\boost/filesystem/v3/operations.hpp(643): error: expected an
identifier
    {
    ^
..\Includes\boost/filesystem/v3/operations.hpp(643): error: expected a ";"
    {
    ^
..\Includes\boost/filesystem/v3/operations.hpp(648): warning #12: parsing
restarts here after previous syntax error
    };
     ^
..\Includes\boost/filesystem/v3/operations.hpp(651): error: identifier
"symlink_option" is undefined
    BOOST_BITMASK(BOOST_SCOPED_ENUM(symlink_option))
    ^
..\Includes\boost/filesystem/v3/operations.hpp(651): error: identifier
"symlink_option" is undefined
    BOOST_BITMASK(BOOST_SCOPED_ENUM(symlink_option))
    ^
..\Includes\boost/filesystem/v3/operations.hpp(651): error: identifier
"symlink_option" is undefined
    BOOST_BITMASK(BOOST_SCOPED_ENUM(symlink_option))
    ^
..\Includes\boost/filesystem/v3/operations.hpp(651): error: nonmember
operator requires a parameter with class or enum type
    BOOST_BITMASK(BOOST_SCOPED_ENUM(symlink_option))
    ^
..\Includes\boost/filesystem/v3/operations.hpp(651): error: identifier
"symlink_option" is undefined
    BOOST_BITMASK(BOOST_SCOPED_ENUM(symlink_option))
    ^
The two errors above are repeated and repeated many times so I removed then
to save bandwidth, space and time.

..\Includes\boost/filesystem/v3/operations.hpp(662): error: name followed by
"::" must be a class or namespace name
        recur_dir_itr_imp() : m_level(0), m_options(symlink_option::none) {}
                                                    ^
..\Includes\boost/filesystem/v3/operations.hpp(678): error: name followed by
"::" must be a class or namespace name
        if ((m_options & symlink_option::_detail_no_push) ==
symlink_option::_detail_no_push)
                         ^
..\Includes\boost/filesystem/v3/operations.hpp(678): error: name followed by
"::" must be a class or namespace name
        if ((m_options & symlink_option::_detail_no_push) ==
symlink_option::_detail_no_push)
                                                             ^
..\Includes\boost/filesystem/v3/operations.hpp(679): error: name followed by
"::" must be a class or namespace name
          m_options &= ~symlink_option::_detail_no_push;
                        ^
..\Includes\boost/filesystem/v3/operations.hpp(682): error: name followed by
"::" must be a class or namespace name
              || (m_options & symlink_option::recurse) ==
symlink_option::recurse))
                              ^
..\Includes\boost/filesystem/v3/operations.hpp(682): error: name followed by
"::" must be a class or namespace name
              || (m_options & symlink_option::recurse) ==
symlink_option::recurse))
                                                          ^
..\Includes\boost/filesystem/v3/operations.hpp(737): error: identifier
"symlink_option" is undefined
        BOOST_SCOPED_ENUM(symlink_option) opt = symlink_option::none)
        ^
..\Includes\boost/filesystem/v3/operations.hpp(737): error: name followed by
"::" must be a class or namespace name
        BOOST_SCOPED_ENUM(symlink_option) opt = symlink_option::none)
                                                ^
..\Includes\boost/filesystem/v3/operations.hpp(747): error: identifier
"symlink_option" is undefined
        BOOST_SCOPED_ENUM(symlink_option) opt,
        ^
..\Includes\boost/filesystem/v3/operations.hpp(737): error: name followed by
"::" must be a class or namespace name
        BOOST_SCOPED_ENUM(symlink_option) opt = symlink_option::none)
                                                ^
..\Includes\boost/filesystem/v3/operations.hpp(761): error: name followed by
"::" must be a class or namespace name
        m_imp->m_options = symlink_option::none;
                           ^
..\Includes\boost/filesystem/v3/operations.hpp(783): error: name followed by
"::" must be a class or namespace name
        return (m_imp->m_options & symlink_option::_detail_no_push)
                                   ^
..\Includes\boost/filesystem/v3/operations.hpp(784): error: name followed by
"::" must be a class or namespace name
          == symlink_option::_detail_no_push;
             ^
..\Includes\boost/filesystem/v3/operations.hpp(802): error: name followed by
"::" must be a class or namespace name
          m_imp->m_options |= symlink_option::_detail_no_push;
                              ^
..\Includes\boost/filesystem/v3/operations.hpp(804): error: name followed by
"::" must be a class or namespace name
          m_imp->m_options &= ~symlink_option::_detail_no_push;
                               ^
..\Includes\boost/filesystem/v3/operations.hpp(988): error: namespace
"boost::filesystem3" has no member "copy_option"
      using filesystem3::copy_option;
                         ^
..\Includes\boost/filesystem/v3/operations.hpp(1031): error: namespace
"boost::filesystem3" has no member "symlink_option"
      using filesystem3::symlink_option;
                         ^

-- 
Bill


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