This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[C++ PATCH]: Remove -fno-honor-std from branch


Hi,
this patch removes the -fno-honor-std switch from the branch. The logic still
remains internally, it's just the options I've removed.

booted & tested on i686-pc-linux-gnu

nathan

-- 
Dr Nathan Sidwell   ::   http://www.codesourcery.com   ::   CodeSourcery LLC
         'But that's a lie.' - 'Yes it is. What's your point?'
nathan@codesourcery.com : http://www.cs.bris.ac.uk/~nathan/ : nathan@acm.org
gcc
2001-08-02  Nathan Sidwell  <nathan@codesourcery.com>

	Remove -fhonor-std.
	* doc/invoke.texi (C++ Dialect Options): Remove -fno-honor-std.

cp:
2001-08-02  Nathan Sidwell  <nathan@codesourcery.com>

	Remove -fhonor-std.
	* NEWS: Document.
	* decl2.c (lang_f_options): Remove honor-std.
	(unsupported_options): Add honor-std.
	* lang-options.h: Remove -fhonor-std, -fno-honor-std.

testsuite
2001-08-02  Nathan Sidwell  <nathan@codesourcery.com>

	Remove -fhonor-std.
	* g++.old-deja/g++.ns/ns14.C: Remove special options.
	* g++.old-deja/g++.other/std1.C: Likewise.
	* g++.old-deja/g++.robertl/eb133.C: Likewise. Add using directive.

Index: doc/invoke.texi
===================================================================
RCS file: /cvs/gcc/gcc/gcc/doc/invoke.texi,v
retrieving revision 1.3.2.21
diff -c -3 -p -r1.3.2.21 invoke.texi
*** invoke.texi	2001/07/26 13:55:03	1.3.2.21
--- invoke.texi	2001/08/02 11:12:17
*************** in the following sections.
*** 174,180 ****
  -fno-elide-constructors @gol
  -fno-enforce-eh-specs  -fexternal-templates @gol
  -falt-external-templates @gol
! -ffor-scope  -fno-for-scope  -fno-gnu-keywords  -fno-honor-std @gol
  -fno-implicit-templates @gol
  -fno-implicit-inline-templates @gol
  -fno-implement-inlines  -fms-extensions @gol
--- 174,180 ----
  -fno-elide-constructors @gol
  -fno-enforce-eh-specs  -fexternal-templates @gol
  -falt-external-templates @gol
! -ffor-scope  -fno-for-scope  -fno-gnu-keywords @gol
  -fno-implicit-templates @gol
  -fno-implicit-inline-templates @gol
  -fno-implement-inlines  -fms-extensions @gol
*************** otherwise be invalid, or have different 
*** 1344,1362 ****
  Do not recognize @code{typeof} as a keyword, so that code can use this
  word as an identifier.  You can use the keyword @code{__typeof__} instead.
  @option{-ansi} implies @option{-fno-gnu-keywords}.
- 
- @item -fno-honor-std
- @opindex fno-honor-std
- Ignore @code{namespace std}, instead of treating it as a real namespace.
- With this switch, the compiler will ignore
- @code{namespace-declarations}, @code{using-declarations},
- @code{using-directives}, and @code{namespace-names}, if they involve
- @code{std}.
- 
- This option is only useful if you have manually compiled the C++
- run-time library with the same switch.  Otherwise, your programs will
- not link.  The use of this option is not recommended, and the option may
- be removed from a future version of G++.
  
  @item -fno-implicit-templates
  @opindex fno-implicit-templates
--- 1344,1349 ----
Index: cp/NEWS
===================================================================
RCS file: /cvs/gcc/gcc/gcc/cp/NEWS,v
retrieving revision 1.25.6.2
diff -c -3 -p -r1.25.6.2 NEWS
*** NEWS	2001/07/18 19:05:38	1.25.6.2
--- NEWS	2001/08/02 11:12:17
***************
*** 1,3 ****
--- 1,9 ----
+ *** Changes in GCC 3.0.1:
+ 
+ * -fhonor-std and -fno-honor-std have been removed. -fno-honor-std was
+   a workaround to allow std compliant code to work with the non-std
+   compliant libstdc++-v2. libstdc++-v3 is std compliant.
+ 
  *** Changes in GCC 3.0:
  
  * Support for guiding declarations has been removed.
Index: cp/decl2.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/cp/decl2.c,v
retrieving revision 1.437.2.25
diff -c -3 -p -r1.437.2.25 decl2.c
*** decl2.c	2001/06/06 21:51:11	1.437.2.25
--- decl2.c	2001/08/02 11:12:19
*************** lang_f_options[] =
*** 473,479 ****
    {"for-scope", &flag_new_for_scope, 2},
    {"gnu-keywords", &flag_no_gnu_keywords, 0},
    {"handle-exceptions", &flag_exceptions, 1},
-   {"honor-std", &flag_honor_std, 1},
    {"implement-inlines", &flag_implement_inlines, 1},
    {"implicit-inline-templates", &flag_implicit_inline_templates, 1},
    {"implicit-templates", &flag_implicit_templates, 1},
--- 473,478 ----
*************** static const char * const unsupported_op
*** 497,502 ****
--- 496,502 ----
    "cond-mismatch",
    "enum-int-equiv",
    "guiding-decls",
+   "honor-std",
    "huge-objects",
    "labels-ok",
    "new-abi",
Index: cp/lang-options.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/cp/lang-options.h,v
retrieving revision 1.37.4.3
diff -c -3 -p -r1.37.4.3 lang-options.h
*** lang-options.h	2001/06/11 21:20:06	1.37.4.3
--- lang-options.h	2001/08/02 11:12:19
*************** DEFINE_LANG_NAME ("C++")
*** 64,72 ****
      N_("Do not recognise GNU defined keywords") },
    { "-fhandle-exceptions", "" },
    { "-fno-handle-exceptions", "" },
-   { "-fhonor-std", "" },
-   { "-fno-honor-std", 
-     N_("Do not treat the namespace `std' as a normal namespace") },
    { "-fhuge-objects", 
      N_("Enable support for huge objects") },
    { "-fno-huge-objects", "" },
--- 64,69 ----
Index: testsuite/g++.old-deja/g++.ns/ns14.C
===================================================================
RCS file: /cvs/gcc/gcc/gcc/testsuite/g++.old-deja/g++.ns/ns14.C,v
retrieving revision 1.2
diff -c -3 -p -r1.2 ns14.C
*** ns14.C	1998/12/16 21:50:45	1.2
--- ns14.C	2001/08/02 11:12:20
***************
*** 1,4 ****
! //Special g++ Options: -fhonor-std
  namespace std{ 
    int f(){
      return 0;
--- 1,4 ----
! 
  namespace std{ 
    int f(){
      return 0;
Index: testsuite/g++.old-deja/g++.other/std1.C
===================================================================
RCS file: /cvs/gcc/gcc/gcc/testsuite/g++.old-deja/g++.other/std1.C,v
retrieving revision 1.1
diff -c -3 -p -r1.1 std1.C
*** std1.C	2000/10/19 17:57:48	1.1
--- std1.C	2001/08/02 11:12:20
***************
*** 1,5 ****
  // Build don't link:
- // Special g++ Options: -fhonor-std
  // Origin: Mark Mitchell <mark@codesourcery.com>
  
  extern "C" int memcmp (const void * __s1,
--- 1,4 ----
Index: testsuite/g++.old-deja/g++.robertl/eb133.C
===================================================================
RCS file: /cvs/gcc/gcc/gcc/testsuite/g++.old-deja/g++.robertl/eb133.C,v
retrieving revision 1.4
diff -c -3 -p -r1.4 eb133.C
*** eb133.C	2000/06/12 23:48:13	1.4
--- eb133.C	2001/08/02 11:12:21
***************
*** 1,8 ****
  // Build don't link:
- // Special g++ Options: -fno-honor-std
  // Gives ICE 109
  // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> 
  // Reported against EGCS snaps 98/06/28.
  
  int main()
  {
--- 1,9 ----
  // Build don't link:
  // Gives ICE 109
  // From: Klaus-Georg Adams <Klaus-Georg.Adams@chemie.uni-karlsruhe.de> 
  // Reported against EGCS snaps 98/06/28.
+ 
+ using namespace std;
  
  int main()
  {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]