================
@@ -42,7 +42,12 @@ void p3example() {
static auto y = 0.0;
----------------
zygoloid wrote:
> Hmmm, it seems we're treating type deduction as an extension in C++98 mode,
> but we don't list it in the language extensions page as such and we don't
> issue pedantic diagnostics for it. @zygoloid do you recall if this was an
> intentional extension or not?
I see a diagnostic for it appearing in all of your test cases:
```
<source>:2:10: warning: 'auto' type specifier is a C++11 extension
[-Wc++11-extensions]
2 | static auto y = 0.0;
|
```
... and `-pedantic-errors` does promote that to an error. So yeah, this is an
intentional extension, from the general category of [feature from a later
language mode accepted in earlier language
modes](https://clang.llvm.org/docs/LanguageExtensions.html#language-extensions-back-ported-to-previous-standards),
but I guess the table in our documentation is incomplete -- it only seems to
include the C++ features with feature test macros (plus one that I guess
postdates the table).
If we want that table to be complete, it's probably worth going through the
diagnostics in the `-Wc++XY-extensions` groups and making sure they're all
listed. All the relevant extensions should have diagnostics already.
https://github.com/llvm/llvm-project/pull/166004
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits