]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/cp/lang-options.h
decl.c (lookup_name_real): Also do implicit typename thing for artificial TYPE_DECLs.
[thirdparty/gcc.git] / gcc / cp / lang-options.h
CommitLineData
6ef471dc 1/* Definitions for switches for C++.
830fcda8 2 Copyright (C) 1995, 1998 Free Software Foundation, Inc.
6ef471dc
RK
3
4This file is part of GNU CC.
5
6GNU CC is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
11GNU CC is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GNU CC; see the file COPYING. If not, write to
e9fa0c7c
RK
18the Free Software Foundation, 59 Temple Place - Suite 330,
19Boston, MA 02111-1307, USA. */
6ef471dc 20
124cb0bf
NC
21DEFINE_LANG_NAME ("C++")
22
6ef471dc
RK
23/* This is the contribution to the `lang_options' array in gcc.c for
24 g++. */
25
124cb0bf
NC
26 { "-faccess-control", "" },
27 { "-fno-access-control", "Do not obey access control semantics" },
28 { "-fall-virtual", "Make all member functions virtual" },
29 { "-fno-all-virtual", "" },
30 { "-falt-external-templates", "Change when template instances are emitted" },
31 { "-fno-alt-external-templates", "" },
32 { "-fansi-overloading", "" },
33 { "-fno-ansi-overloading", "" },
34 { "-fcheck-new", "Check the return value of new" },
35 { "-fno-check-new", "" },
36 { "-fconserve-space", "Reduce size of object files" },
37 { "-fno-conserve-space", "" },
d9cf7c82
JM
38 { "-fconst-strings", "" },
39 { "-fno-const-strings", "Make string literals `char[]' instead of `const char[]'" },
124cb0bf 40 { "-fdefault-inline", "" },
56ae6d77 41 { "-fno-default-inline", "Do not inline member functions by default"},
124cb0bf
NC
42 { "-frtti", "" },
43 { "-fno-rtti", "Do not generate run time type descriptor information" },
44 { "-felide-constructors", "" },
45 { "-fno-elide-constructors", "" },
46 { "-fenum-int-equiv", "" },
47 { "-fno-enum-int-equiv", "" },
48 { "-fexternal-templates", "" },
49 { "-fno-external-templates", "" },
50 { "-ffor-scope", "" },
51 { "-fno-for-scope", "Scope of for-init-statement vars extends outside" },
52 { "-fguiding-decls", "Implement guiding declarations" },
53 { "-fno-guiding-decls", "" },
54 { "-fgnu-keywords", "" },
55 { "-fno-gnu-keywords", "Do not recognise GNU defined keywords" },
e907984f 56 { "-fhandle-exceptions", "" },
124cb0bf
NC
57 { "-fno-handle-exceptions", "" },
58 { "-fhandle-signatures", "Handle signature language constructs" },
59 { "-fno-handle-signatures", "" },
56ae6d77 60 { "-fhonor-std", "Treat the namespace `std' as a normal namespace" },
124cb0bf
NC
61 { "-fno-honor-std", "" },
62 { "-fhuge-objects", "Enable support for huge objects" },
63 { "-fno-huge-objects", "" },
64 { "-fimplement-inlines", "" },
65 { "-fno-implement-inlines", "Export functions even if they can be inlined" },
56ae6d77 66 { "-fimplicit-templates", "Emit implicit template instatiations when used" },
124cb0bf 67 { "-fno-implicit-templates", "" },
2ce3c6c6
JM
68 { "-finit-priority", "Handle the init_priority attribute" },
69 { "-fno-init-priority", "" },
124cb0bf
NC
70 { "-flabels-ok", "Labels can be used as first class objects" },
71 { "-fno-labels-ok", "" },
e907984f 72 { "-fmemoize-lookups", "" },
124cb0bf 73 { "-fno-memoize-lookups", "" },
56ae6d77 74 { "-fname-mangling-version-", "" },
124cb0bf
NC
75 { "-fnew-abi", "Enable experimental ABI changes" },
76 { "-fno-new-abi", "" },
77 { "-fnonnull-objects", "" },
78 { "-fno-nonnull-objects", "Do not assume that a reference is always valid" },
79 { "-foperator-names", "Recognise and/bitand/bitor/compl/not/or/xor" },
80 { "-fno-operator-names", "" },
81 { "-foptional-diags", "" },
82 { "-fno-optional-diags", "Disable optional diagnostics" },
83 { "-frepo", "Enable automatic template instantiation" },
84 { "-fno-repo", "" },
e907984f 85 { "-fsave-memoized", "" },
124cb0bf
NC
86 { "-fno-save-memoized", "" },
87 { "-fsquangle", "Enable squashed name mangling" },
88 { "-fno-squangle", "" },
89 { "-fstats", "Display statistics accumulated during compilation" },
90 { "-fno-stats", "" },
91 { "-fstrict-prototype", "" },
92 { "-fno-strict-prototype", "Do not assume that empty prototype means no args" },
93 { "-ftemplate-depth-", "Specify maximum template instantiation depth"},
94 { "-fthis-is-variable", "Make 'this' not be type '* const'" },
95 { "-fno-this-is-variable", "" },
a1dd0d36
JM
96 { "-fvtable-gc", "Discard unused virtual functions" },
97 { "-fno-vtable-gc", "" },
124cb0bf
NC
98 { "-fvtable-thunks", "Implement vtables using thunks" },
99 { "-fno-vtable-thunks", "" },
100 { "-fweak", "Emit common-like symbols as weak symbols" },
101 { "-fno-weak", "" },
102 { "-fxref", "Emit cross referencing information" },
103 { "-fno-xref", "" },
6ef471dc 104
124cb0bf
NC
105 { "-Wreturn-type", "Warn about inconsistent return types" },
106 { "-Wno-return-type", "" },
107 { "-Woverloaded-virtual", "Warn about overloaded virtual function names" },
108 { "-Wno-overloaded-virtual", "" },
109 { "-Wctor-dtor-privacy", "Warn when all ctors/dtors are private" },
110 { "-Wno-ctor-dtor-privacy", "" },
111 { "-Wnon-virtual-dtor", "Warn about non virtual destructors" },
112 { "-Wno-non-virtual-dtor", "" },
113 { "-Wextern-inline", "Warn when a function is declared extern, then inline" },
114 { "-Wno-extern-inline", "" },
115 { "-Wreorder", "Warn when the compiler reorders code" },
116 { "-Wno-reorder", "" },
117 { "-Wsynth", "Warn when synthesis behaviour differs from Cfront" },
118 { "-Wno-synth", "" },
119 { "-Wpmf-conversions", "Warn when type converting pointers to member functions" },
120 { "-Wno-pmf-conversions", "" },
121 { "-Weffc++", "Warn about violations of Effective C++ style rules" },
122 { "-Wno-effc++", "" },
123 { "-Wsign-promo", "Warn when overload promotes from unsigned to signed" },
124 { "-Wno-sign-promo", "" },
125 { "-Wold-style-cast", "Warn if a C style cast is used in a program" },
126 { "-Wno-old-style-cast", "" },