Opened 19 years ago
Closed 17 years ago
#232 closed Bugs (Wont Fix)
Compiling problems with Regex / MSVC++ 7
Reported by: | johneddy | Owned by: | John Maddock |
---|---|---|---|
Milestone: | Component: | regex | |
Version: | None | Severity: | |
Keywords: | Cc: |
Description
hello VC++ will not compile the following code with the newest version of the regex library whereas it would with the previous version (g++ 3.2.2 does not have a problem with it). #include <locale> using namespace std; #include <boost/regex.hpp> int main (int argc, char **argv) { return 0; } The error produced is: regbase.hpp(120) : error C2955: 'std::collate' : use of class template requires template argument list The offending line of code is inside an enumeration declaration and looks like this: collate = ::boost::regbase::collate, It seems that VC++ cannot resolve the difference between the enumeration constant and the STL collate class. The same error can be produced with the following code (or anything like it). #include <vector> using namespace std; enum SomeEnum { vector = 0 }; int main (int argc, char **argv) { return 0; } I cannot think of a good way around this short of changing the collate constant name and re-building. The examples are boiled down and it would not be possible for me to change the order of the includes nor would it be easy remove the using delcaration. John
Change History (4)
comment:1 by , 19 years ago
Summary: | Compiling problems with MSVC++ 7 → Compiling problems with Regex / MSVC++ 7 |
---|
comment:3 by , 18 years ago
Logged In: YES user_id=1243119 Hello John Maddock, I am working with MSVStudio .NET 2000 and therefore I tried using option 2 in the solution you propose. But that does not seem to help either. Any thoughts... Cheers Ramanand
comment:4 by , 17 years ago
Status: | assigned → closed |
---|
Logged In: YES user_id=14804 I'm closing this issue, as it appears to be unfixable (and relates to an obsolete compiler). John Maddock
Note:
See TracTickets
for help on using tickets.