From 2eeaa3bbe9cacf4d3d407797e38c00e062c6bfd5 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Fri, 21 Jun 2019 14:18:11 +0200 Subject: [PATCH] Deprecate -frepo option. gcc/ChangeLog: 2019-06-21 Martin Liska * doc/extend.texi: Note that -frepo might be removed in the future. * doc/invoke.texi: Likewise. gcc/c-family/ChangeLog: 2019-06-21 Martin Liska * c.opt: Deprecate -frepo. gcc/testsuite/ChangeLog: 2019-06-21 Martin Liska * g++.dg/parse/repo1.C: Add new warning for the deprecated option -frepo. * g++.dg/rtti/repo1.C: Likewise. * g++.dg/template/repo1.C: Likewise. * g++.dg/template/repo10.C: Likewise. * g++.dg/template/repo11.C: Likewise. * g++.dg/template/repo2.C: Likewise. * g++.dg/template/repo3.C: Likewise. * g++.dg/template/repo4.C: Likewise. * g++.dg/template/repo5.C: Likewise. * g++.dg/template/repo6.C: Likewise. * g++.dg/template/repo7.C: Likewise. * g++.dg/template/repo8.C: Likewise. * g++.dg/template/repo9.C: Likewise. * g++.old-deja/g++.pt/instantiate4.C: Likewise. * g++.old-deja/g++.pt/instantiate6.C: Likewise. * g++.old-deja/g++.pt/repo1.C: Likewise. * g++.old-deja/g++.pt/repo2.C: Likewise. * g++.old-deja/g++.pt/repo3.C: Likewise. * g++.old-deja/g++.pt/repo4.C: Likewise. --- gcc/c-family/c.opt | 2 +- gcc/doc/extend.texi | 2 ++ gcc/doc/invoke.texi | 2 ++ gcc/testsuite/g++.dg/parse/repo1.C | 1 + gcc/testsuite/g++.dg/rtti/repo1.C | 1 + gcc/testsuite/g++.dg/template/repo1.C | 1 + gcc/testsuite/g++.dg/template/repo10.C | 1 + gcc/testsuite/g++.dg/template/repo11.C | 1 + gcc/testsuite/g++.dg/template/repo2.C | 1 + gcc/testsuite/g++.dg/template/repo3.C | 1 + gcc/testsuite/g++.dg/template/repo4.C | 1 + gcc/testsuite/g++.dg/template/repo5.C | 1 + gcc/testsuite/g++.dg/template/repo6.C | 1 + gcc/testsuite/g++.dg/template/repo7.C | 1 + gcc/testsuite/g++.dg/template/repo8.C | 1 + gcc/testsuite/g++.dg/template/repo9.C | 1 + gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C | 3 ++- gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C | 1 + gcc/testsuite/g++.old-deja/g++.pt/repo1.C | 1 + gcc/testsuite/g++.old-deja/g++.pt/repo2.C | 1 + gcc/testsuite/g++.old-deja/g++.pt/repo3.C | 1 + gcc/testsuite/g++.old-deja/g++.pt/repo4.C | 1 + 22 files changed, 25 insertions(+), 2 deletions(-) diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt index 572cf186262..963c651019d 100644 --- a/gcc/c-family/c.opt +++ b/gcc/c-family/c.opt @@ -1732,7 +1732,7 @@ ObjC ObjC++ LTO Var(flag_replace_objc_classes) Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime. frepo -C++ ObjC++ +C++ ObjC++ Deprecated Enable automatic template instantiation. frtti diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index f2619e12f93..4495d2787e8 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -24510,6 +24510,8 @@ conflicts if multiple libraries try to provide the same instantiations. For greater control, use explicit instantiation as described in the next option. +The option is deprecated and might be removed in a later GCC release. + @item @opindex fno-implicit-templates Compile your code with @option{-fno-implicit-templates} to disable the diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index eaef4cd63d2..75f772f1856 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -2722,6 +2722,8 @@ Enable automatic template instantiation at link time. This option also implies @option{-fno-implicit-templates}. @xref{Template Instantiation}, for more information. +The option is deprecated and might be removed in a later GCC release. + @item -fno-rtti @opindex fno-rtti @opindex frtti diff --git a/gcc/testsuite/g++.dg/parse/repo1.C b/gcc/testsuite/g++.dg/parse/repo1.C index efadd58723e..b213d81f6d6 100644 --- a/gcc/testsuite/g++.dg/parse/repo1.C +++ b/gcc/testsuite/g++.dg/parse/repo1.C @@ -1,5 +1,6 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } extern "C" inline void f() {} diff --git a/gcc/testsuite/g++.dg/rtti/repo1.C b/gcc/testsuite/g++.dg/rtti/repo1.C index f72a9730ab9..ea4947f65f2 100644 --- a/gcc/testsuite/g++.dg/rtti/repo1.C +++ b/gcc/testsuite/g++.dg/rtti/repo1.C @@ -2,6 +2,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } #include template diff --git a/gcc/testsuite/g++.dg/template/repo1.C b/gcc/testsuite/g++.dg/template/repo1.C index 342993eca14..5ff786f77db 100644 --- a/gcc/testsuite/g++.dg/template/repo1.C +++ b/gcc/testsuite/g++.dg/template/repo1.C @@ -1,6 +1,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } struct A { A(); diff --git a/gcc/testsuite/g++.dg/template/repo10.C b/gcc/testsuite/g++.dg/template/repo10.C index c92f7a52b60..7aa705494e1 100644 --- a/gcc/testsuite/g++.dg/template/repo10.C +++ b/gcc/testsuite/g++.dg/template/repo10.C @@ -3,6 +3,7 @@ // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } // { dg-final cleanup-repo-files } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template struct Foo diff --git a/gcc/testsuite/g++.dg/template/repo11.C b/gcc/testsuite/g++.dg/template/repo11.C index 5cabfd452ed..5e074787f77 100644 --- a/gcc/testsuite/g++.dg/template/repo11.C +++ b/gcc/testsuite/g++.dg/template/repo11.C @@ -3,6 +3,7 @@ // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } // { dg-final cleanup-repo-files } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template struct J { J(H) {} }; template struct K; diff --git a/gcc/testsuite/g++.dg/template/repo2.C b/gcc/testsuite/g++.dg/template/repo2.C index e3224155e97..f8ef41b80d9 100644 --- a/gcc/testsuite/g++.dg/template/repo2.C +++ b/gcc/testsuite/g++.dg/template/repo2.C @@ -2,6 +2,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template struct __Atomicity_lock diff --git a/gcc/testsuite/g++.dg/template/repo3.C b/gcc/testsuite/g++.dg/template/repo3.C index cfa38a9e435..fda3fe3b931 100644 --- a/gcc/testsuite/g++.dg/template/repo3.C +++ b/gcc/testsuite/g++.dg/template/repo3.C @@ -1,6 +1,7 @@ // { dg-options "-frepo -DF='a'" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template void f () {} template void g () { f(); } diff --git a/gcc/testsuite/g++.dg/template/repo4.C b/gcc/testsuite/g++.dg/template/repo4.C index 64882a8c694..0a2976356c0 100644 --- a/gcc/testsuite/g++.dg/template/repo4.C +++ b/gcc/testsuite/g++.dg/template/repo4.C @@ -3,6 +3,7 @@ // { dg-final { cleanup-repo-files } } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } namespace { struct Foo {}; diff --git a/gcc/testsuite/g++.dg/template/repo5.C b/gcc/testsuite/g++.dg/template/repo5.C index e45ade7df48..1116b5b65fd 100644 --- a/gcc/testsuite/g++.dg/template/repo5.C +++ b/gcc/testsuite/g++.dg/template/repo5.C @@ -3,6 +3,7 @@ // { dg-final { cleanup-repo-files } } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template< typename T, T N > struct integral_c { static const T value = N; diff --git a/gcc/testsuite/g++.dg/template/repo6.C b/gcc/testsuite/g++.dg/template/repo6.C index 4b7178e2ad3..f043b24fb05 100644 --- a/gcc/testsuite/g++.dg/template/repo6.C +++ b/gcc/testsuite/g++.dg/template/repo6.C @@ -3,6 +3,7 @@ // { dg-final { cleanup-repo-files } } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template class A diff --git a/gcc/testsuite/g++.dg/template/repo7.C b/gcc/testsuite/g++.dg/template/repo7.C index dafb3f5597c..f89beefba57 100644 --- a/gcc/testsuite/g++.dg/template/repo7.C +++ b/gcc/testsuite/g++.dg/template/repo7.C @@ -3,6 +3,7 @@ // { dg-final { cleanup-repo-files } } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } struct A { diff --git a/gcc/testsuite/g++.dg/template/repo8.C b/gcc/testsuite/g++.dg/template/repo8.C index c51592c9349..3082f27213f 100644 --- a/gcc/testsuite/g++.dg/template/repo8.C +++ b/gcc/testsuite/g++.dg/template/repo8.C @@ -3,6 +3,7 @@ // { dg-final { cleanup-repo-files } } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } struct A { diff --git a/gcc/testsuite/g++.dg/template/repo9.C b/gcc/testsuite/g++.dg/template/repo9.C index 7ddc6bf56d3..463429e57f7 100644 --- a/gcc/testsuite/g++.dg/template/repo9.C +++ b/gcc/testsuite/g++.dg/template/repo9.C @@ -3,6 +3,7 @@ // { dg-final { cleanup-repo-files } } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template struct A { diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C index d7a8cab31c5..866f02ace20 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate4.C @@ -1,7 +1,8 @@ // { dg-do link } -// { dg-options "-frepo -Werror" } +// { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } // Submitted by Melissa O'Neill diff --git a/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C b/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C index 6726b216673..309e8bde8f2 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/instantiate6.C @@ -2,6 +2,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } // Simplified from testcase by Erez Louidor Lior diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo1.C b/gcc/testsuite/g++.old-deja/g++.pt/repo1.C index bdfe306b4ad..7c9dd2d97cf 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo1.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo1.C @@ -2,6 +2,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } // Bug: g++ complains about duplicate explicit instantiations with -frepo. // From Jason Merrill diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo2.C b/gcc/testsuite/g++.old-deja/g++.pt/repo2.C index a8d8b1217a1..81cf2866a67 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo2.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo2.C @@ -2,6 +2,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } // Test that collect2 isn't confused by GNU ld's "In function `foo':" message. // Contributed by Jason Merrill diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo3.C b/gcc/testsuite/g++.old-deja/g++.pt/repo3.C index 2f62139660e..42e3bea5cab 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo3.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo3.C @@ -2,6 +2,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } // Test that we properly generate the vtable and such for C. // Contributed by scott snyder diff --git a/gcc/testsuite/g++.old-deja/g++.pt/repo4.C b/gcc/testsuite/g++.old-deja/g++.pt/repo4.C index 84575cd9469..2d028d3b328 100644 --- a/gcc/testsuite/g++.old-deja/g++.pt/repo4.C +++ b/gcc/testsuite/g++.old-deja/g++.pt/repo4.C @@ -2,6 +2,7 @@ // { dg-options "-frepo" } // { dg-require-host-local "" } // { dg-skip-if "dkms are not final links" { vxworks_kernel } } +// { dg-warning "switch '-frepo' is no longer supported" "" { target *-*-* } 0 } template struct S { -- 2.21.0