diff options
author | Nathan Sidwell <nathan@codesourcery.com> | 2001-02-12 14:29:13 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2001-02-12 14:29:13 +0000 |
commit | 82c18d5c67b2d121e8ef05c909f3e442c2ea742e (patch) | |
tree | ad807fb93628215059ae03d400446551819d207d /gcc | |
parent | 48ce6bbbe6c22735efd1e8fe6b6fbf4d8453642e (diff) | |
download | gcc-82c18d5c67b2d121e8ef05c909f3e442c2ea742e.zip gcc-82c18d5c67b2d121e8ef05c909f3e442c2ea742e.tar.gz gcc-82c18d5c67b2d121e8ef05c909f3e442c2ea742e.tar.bz2 |
extend.texi (Deprecated): Deprecate new initializer lists.
.: * extend.texi (Deprecated): Deprecate new initializer lists.
cp:
* errfn.c (cp_deprecated): Tweak diagnostic text.
* parse.y (new_initializer): Deprecate initializer lists
extension.
testsuite:
* g++.old-deja/g++.robertl/eb63.C: Remove new initializer list
case.
* g++.old-deja/g++.ext/arrnew.C: Deprecate.
From-SVN: r39603
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cp/errfn.c | 3 | ||||
-rw-r--r-- | gcc/cp/parse.y | 5 | ||||
-rw-r--r-- | gcc/extend.texi | 3 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.ext/arrnew.C | 4 | ||||
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.robertl/eb63.C | 2 |
8 files changed, 28 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5838071..51837d0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2001-02-12 Nathan Sidwell <nathan@codesourcery.com> + * extend.texi (Deprecated): Deprecate new initializer lists. + +2001-02-12 Nathan Sidwell <nathan@codesourcery.com> + * mkdeps.c (deps_add_default_target): Robustify. Add basename component only. * cpp.texi (-M): Describe how default target is generated. diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 6e1cb90..3f7b392 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2001-02-12 Nathan Sidwell <nathan@codesourcery.com> + + * errfn.c (cp_deprecated): Tweak diagnostic text. + * parse.y (new_initializer): Deprecate initializer lists + extension. + 2001-02-12 Mark Mitchell <mark@codesourcery.com> Remove old ABI support. diff --git a/gcc/cp/errfn.c b/gcc/cp/errfn.c index 802f567..351dba9 100644 --- a/gcc/cp/errfn.c +++ b/gcc/cp/errfn.c @@ -265,8 +265,7 @@ cp_deprecated (msg) extern int warn_deprecated; if (!warn_deprecated) return; - cp_warning ("%s is deprecated.", msg); - cp_warning ("Please see the documentation for details."); + cp_warning ("%s is deprecated, please see the documentation for details", msg); } void diff --git a/gcc/cp/parse.y b/gcc/cp/parse.y index e84efb5..a9963ee 100644 --- a/gcc/cp/parse.y +++ b/gcc/cp/parse.y @@ -1290,11 +1290,14 @@ new_initializer: } /* GNU extension so people can use initializer lists. Note that this alters the meaning of `new int = 1', which was previously - syntactically valid but semantically invalid. */ + syntactically valid but semantically invalid. + This feature is now deprecated and will be removed in a future + release. */ | '=' init { if (pedantic) pedwarn ("ISO C++ forbids initialization of new expression with `='"); + cp_deprecated ("new initializer lists extension"); if (TREE_CODE ($2) != TREE_LIST && TREE_CODE ($2) != CONSTRUCTOR) $$ = build_tree_list (NULL_TREE, $2); diff --git a/gcc/extend.texi b/gcc/extend.texi index c1d5233..c2ce6a3 100644 --- a/gcc/extend.texi +++ b/gcc/extend.texi @@ -4390,6 +4390,9 @@ it is required for backwards compatibility @xref{Backwards Compatibility}. The named return value extension has been deprecated, and will be removed from g++ at some point. +The use of initializer lists with new expressions has been deprecated, +and will be removed from g++ at some point. + @node Backwards Compatibility @section Backwards Compatibility @cindex Backwards Compatibility diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index c883278..de55bb3 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2001-02-12 Nathan Sidwell <nathan@codesourcery.com> + + * g++.old-deja/g++.robertl/eb63.C: Remove new initializer list + case. + * g++.old-deja/g++.ext/arrnew.C: Deprecate. + 2001-02-12 Jakub Jelinek <jakub@redhat.com> * gcc.c-torture/compile/20010209-1.c: New test. diff --git a/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C b/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C index ef051d2..0ecb877 100644 --- a/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C +++ b/gcc/testsuite/g++.old-deja/g++.ext/arrnew.C @@ -2,4 +2,6 @@ // Build don't link: // Special g++ Options: - int *f(){ return new int[1] = { 1 }; } +int *f(){ + return new int[1] = { 1 }; // WARNING - deprecated +} diff --git a/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C b/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C index 671fe81..f786e70 100644 --- a/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C +++ b/gcc/testsuite/g++.old-deja/g++.robertl/eb63.C @@ -11,6 +11,6 @@ public: main() { A* a; - a = new A[2] = { A(1,false), A(1,false) } ; + a = new A[2](1,false); } |