doug.gregor at gmail.com
Mon Oct 6 12:45:53 PDT 2008
On Mon, Oct 6, 2008 at 2:15 PM, Mike Stump <mrs at apple.com> wrote:
> On Oct 5, 2008, at 5:20 AM, Sebastian Redl wrote:
>> The question is whether we want to follow the broken rules of C++03,
>> GCC does, or the updated rules of C++0x, which introduces a tiny
>> incompatibility to GCC.
> My guidance would be follow the new rules, and if it poses a problem
> for real code (or if it people just want to donate extra goodness),
> then add the old semantics under 03 (or earlier).
There's a different here between things that were clarified after
C++98 or C++03 and things that were actually changed. If it's
something that was clarified (e.g., via a defect report), we should
just implement the new semantics unless it poses a problem for real
code. If it's some new feature in C++0x, or something that
intentionally changed the behavior, we should implement both... and,
ideally, have some kind of C++0x-compatibility warning. Examples of
such changes include "auto" changing from a storage specifier to a
type-specifier, and >> changing meanings within a template argument
In this particular case, I think we just implement the clarified
semantics and move on.
More information about the cfe-dev