Opened 13 years ago

Closed 12 years ago

Last modified 12 years ago

#4135 closed Bugs (fixed)

C:\Program Files\boost\boost_1_42_0\boost/iostreams/detail/path.hpp(53) : error C2825: 'Path': must be a class or namespace when followed by '::'

Reported by: pele@… Owned by: Daniel James
Milestone: Boost 1.43.0 Component: iostreams
Version: Boost 1.42.0 Severity: Regression
Keywords: Cc:

Description

When trying to compile a project in VisualStudio2005 and using boost1.42 I get errors (when including boost/iostreams for example) that is attached in the "log" that I've created.

I don't get this error on Linux with boost 1.38

I've built my own boost 1.42 as per instructions in "Boost Getting Started on Windows".

Attachments (1)

BuildLog.htm (8.1 KB ) - added by pele@… 13 years ago.
Build log

Download all attachments as: .zip

Change History (6)

by pele@…, 13 years ago

Attachment: BuildLog.htm added

Build log

comment:1 by pele@…, 13 years ago

I also get those same errors when using 1.42 binaries from boostpro. I don't get them using 1.38 boostpro bins. All on vstudio2005.

comment:2 by Daniel James, 13 years ago

Milestone: Boost 1.43.0Boost 1.44.0
Owner: changed from Jonathan Turkanis to Daniel James
Severity: ShowstopperRegression
Status: newassigned

Sorry, it's probably too late to fix this for 1.43. I think that the problem is that you're constructing with a char* which is a closer match for the templated constructor (which is intended to be used with a Boost.Filesystem path) than for the const char* constructor. So as a temporary workaround you could try casting to const char* when constructing the path. I'll try to come up with a proper fix in trunk soon.

comment:3 by Daniel James, 13 years ago

(In [61497]) Only support the templated constructor for types with an 'external_string_type' member. Refs #4135.

Using SFINAE, I might add a workaround for compilers that don't support it, although I'm not sure if there are any that Iostreams supports.

comment:4 by anonymous, 12 years ago

Milestone: Boost 1.44.0Boost 1.43.0

comment:5 by Daniel James, 12 years ago

Resolution: fixed
Status: assignedclosed

(In [61641]) Merge iostreams. Fixes #4135 and some small tweaks for clang.

Note: See TracTickets for help on using tickets.