id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 12960,Line break \R in x-mode,robic0@…,John Maddock,"Bug: get_escape_R_string() This function injects whitespace literals in the return string.[[BR]] This is a problem in x-mode since the whitespace[[BR]] is ignored when it's re-parsed, which then throws an exception. -------------------------------- File: boost\regex\v4\regex_traits_defaults.hpp Function: get_escape_R_string() {{{ template inline const charT* get_escape_R_string() { #ifdef BOOST_MSVC # pragma warning(push) # pragma warning(disable:4309 4245) #endif static const charT e1[] = { '(', '?', '>', '\x0D', '\x0A', '?', '|', '[', '\x0A', '\x0B', '\x0C', static_cast('\x85'), '\\', 'x', '{', '2', '0', '2', '8', '}', '\\', 'x', '{', '2', '0', '2', '9', '}', ']', ')', '\0' }; static const charT e2[] = { '(', '?', '>', '\x0D', '\x0A', '?', '|', '[', '\x0A', '\x0B', '\x0C', static_cast('\x85'), ']', ')', '\0' }; charT c = static_cast(0x2029u); bool b = (static_cast(c) == 0x2029u); return (b ? e1 : e2); #ifdef BOOST_MSVC # pragma warning(pop) #endif } }}} -------------------------------- Can be fixed by converting the whitespace characters[[BR]] to hex string literal. {{{ static const charT e1[] = { '(', '?', '>', '\\', 'x', '0', 'D', '\\', 'x', '0', 'A', '?', '|', '[', '\\', 'x', '0', 'A', '\\', 'x', '0', 'B', '\\', 'x', '0', 'C', '\\', 'x', '8', '5', '\\', 'x', '{', '2', '0', '2', '8', '}', '\\', 'x', '{', '2', '0', '2', '9', '}', ']', ')', '\0' }; static const charT e2[] = { '(', '?', '>', '\\', 'x', '0', 'D', '\\', 'x', '0', 'A', '?', '|', '[', '\\', 'x', '0', 'A', '\\', 'x', '0', 'B', '\\', 'x', '0', 'C', '\\', 'x', '8', '5', ']', ')', '\0' }; }}} ",Bugs,closed,To Be Determined,regex,Boost 1.61.0,Problem,fixed,line-break,