Follow-up of #5415. Fixes builds like: ./configure CXXFLAGS="-std=c++11"
No rush, I just wanted to get these fixed up while they were fresh in my mind. Fixes all known (to me) build issues except the boost issue mentioned below, tested with several compilers/stdlibs.
- Fix a boost incompatibility with c++11 and list_of
- Don't forward-declare std::map types. See: http://llvm.org/bugs/show_bug.cgi?id=13471
- Watch out for user-defined-literal syntax in tests
There's also an annoying boost bug that causes problems with copy_file on some platforms: https://svn.boost.org/trac/boost/ticket/10038
It's a bit more complicated to fix, so I'm leaving that as a separate issue. Ideally we could work around it by just using a different function. As a temporary workaround, adding BOOST_NO_SCOPED_ENUMS to CPPFLAGS works.
As mentioned in a commit message, the MOVEONLY commits are very simple despite what the nasty git diffs show, it's just moved code.