Rationale: Required for new features
.  Effect on original feature:
Valid C++ 2003 code may fail to compile or produce different results in
this International Standard
.  Specifically, macros named 
R, 
u8,
u8R, 
u, 
uR, 
U, 
UR, or 
LR will
not be expanded when adjacent to a string literal but will be interpreted as
part of the string literal
.  For example,
#define u8 "abc"
const char* s = u8"def";        
 Rationale: Required for new features
.  Effect on original feature:
Valid C++ 2003 code may fail to compile or produce different results in
this International Standard, as the following example illustrates
. 
#define _x "there"
"hello"_x         
Previously, #1 would have consisted of two separate preprocessing tokens and
the macro 
_x would have been expanded
.  In this International Standard,
#1 consists of a single preprocessing token, so the macro is not expanded
.  Rationale: Required for new features
.  Effect on original feature:
Added to Table 
5, the following identifiers are new keywords:
alignas,
alignof,
char16_t,
char32_t,
constexpr,
decltype,
noexcept,
nullptr,
static_assert,
and
thread_local.  Valid C++ 2003 code using these identifiers is invalid in this International
Standard
.  Rationale: C99 compatibility
.  Effect on original feature:
Certain integer literals larger than can be represented by 
long could
change from an unsigned integer type to 
signed long long.