Opened 8 years ago

Closed 8 years ago

#10183 closed Bugs (fixed)

MSVC: Compile error with _CRTDBG_MAP_ALLOC

Reported by: raad@… Owned by: Glen Fernandes
Milestone: To Be Determined Component: smart_ptr
Version: Boost Release Branch Severity: Regression
Keywords: Cc: marci_r@…

Description

If _CRTDBG_MAP_ALLOC is defined, there is the following define in the Visual C++ headers:

#define free(p) _free_dbg(p, _NORMAL_BLOCK)

That leads to compile errors because of a function named "free" in array_allocator.hpp:

boost/smart_ptr/detail/array_allocator.hpp(174): error C2059: syntax error : 'constant'
boost/smart_ptr/detail/array_allocator.hpp(187) : see reference to class template instantiation 'boost::detail::as_allocator<A,T,R>' being compiled
boost/smart_ptr/detail/array_allocator.hpp(182): error C2059: syntax error : 'constant'

1.55 worked fine. Could that function be renamed please?

Change History (3)

comment:1 by raad@…, 8 years ago

Severity: ProblemRegression

comment:2 by Peter Dimov, 8 years ago

Owner: changed from Peter Dimov to Glen Fernandes

comment:3 by Glen Fernandes, 8 years ago

Resolution: fixed
Status: newclosed

Fixed in master for the 1.56.0 release.

Note: See TracTickets for help on using tickets.