Require target lra in gcc.dg/pr108095.c
[official-gcc.git] / gcc / rust / lang.opt
blobaab168334f6cc33dfeec5bc6192ea6e619a48549
1 ; Options for the Rust front end.
2 ; Copyright (C) 2003-2023 Free Software Foundation, Inc.
4 ; This file is part of GCC.
6 ; GCC is free software; you can redistribute it and/or modify it under
7 ; the terms of the GNU General Public License as published by the Free
8 ; Software Foundation; either version 3, or (at your option) any later
9 ; version.
11 ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12 ; WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 ; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 ; for more details.
16 ; You should have received a copy of the GNU General Public License
17 ; along with GCC; see the file COPYING3.  If not see
18 ; <http://www.gnu.org/licenses/>.
20 ; See the GCC internals manual for a description of this file's format.
22 ; Please try to keep this file in ASCII collating order.
24 ; Describes command-line options used by this frontend
26 Language
27 Rust
30 Rust Joined Separate
31 ; Documented in c.opt
34 Rust Joined Separate
35 ; Not documented
37 Wall
38 Rust
39 ; Documented in c.opt
41 Wunused-variable
42 Rust Var(warn_unused_variable) Warning
43 ; documented in common.opt
45 Wunused-const-variable
46 Rust Warning Alias(Wunused-const-variable=, 2, 0)
47 Warn when a const variable is unused.
49 Wunused-const-variable=
50 Rust Joined RejectNegative UInteger Var(warn_unused_const_variable) Warning LangEnabledBy(Rust,Wunused-variable, 1, 0) IntegerRange(0, 2)
51 Warn when a const variable is unused.
53 Wunused-result
54 Rust Var(warn_unused_result) Warning
55 Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value.
57 frust-crate=
58 Rust Joined RejectNegative
59 -frust-crate=<name>             Set the crate name for the compilation
61 frust-debug
62 Rust Var(flag_rust_debug)
63 Dump various Rust front end internals.
65 frust-dump-
66 Rust Joined RejectNegative
67 -frust-dump-<type>      Dump Rust frontend internal information.
69 frust-incomplete-and-experimental-compiler-do-not-use
70 Rust Var(flag_rust_experimental)
71 Enable experimental compilation of Rust files at your own risk
73 frust-max-recursion-depth=
74 Rust RejectNegative Type(int) Var(rust_max_recursion_depth) Init(64)
75 -frust-max-recursion-depth=integer
77 frust-mangling=
78 Rust Joined RejectNegative Enum(frust_mangling) Var(flag_rust_mangling)
79 -frust-mangling=[legacy|v0]     Choose which version to use for name mangling
81 Enum
82 Name(frust_mangling) Type(int) UnknownError(unknown rust mangling option %qs)
84 EnumValue
85 Enum(frust_mangling) String(legacy) Value(0)
87 EnumValue
88 Enum(frust_mangling) String(v0) Value(1)
90 frust-cfg=
91 Rust Joined RejectNegative
92 -frust-cfg=<name>             Set a config expansion option
94 frust-edition=
95 Rust Joined RejectNegative Enum(frust_edition) Var(flag_rust_edition)
96 -frust-edition=[2015|2018|2021]             Choose which edition to use when compiling rust code
98 Enum
99 Name(frust_edition) Type(int) UnknownError(unknown rust edition %qs)
101 EnumValue
102 Enum(frust_edition) String(2015) Value(0)
104 EnumValue
105 Enum(frust_edition) String(2018) Value(1)
107 EnumValue
108 Enum(frust_edition) String(2021) Value(2)
110 frust-embed-metadata
111 Rust Var(flag_rust_embed_metadata)
112 Flag to enable embeding metadata directly into object files
114 frust-metadata-output=
115 Rust Joined RejectNegative
116 -frust-metadata-output=<path.rox>  Path to output crate metadata
119 Rust Joined Separate
120 ; Documented in common.opt
122 frust-compile-until=
123 Rust Joined RejectNegative Enum(frust_compile_until) Var(flag_rust_compile_until)
124 -frust-compile-until=[ast|attributecheck|expansion|nameresolution|lowering|typecheck|privacy|unsafety|const|copimlation|end]             When to stop in the pipeline when compiling Rust code
126 Enum
127 Name(frust_compile_until) Type(int) UnknownError(unknown rust compile-until %qs)
129 EnumValue
130 Enum(frust_compile_until) String(ast) Value(0)
132 EnumValue
133 Enum(frust_compile_until) String(attributecheck) Value(1)
135 EnumValue
136 Enum(frust_compile_until) String(expansion) Value(2)
138 EnumValue
139 Enum(frust_compile_until) String(nameresolution) Value(3)
141 EnumValue
142 Enum(frust_compile_until) String(lowering) Value(4)
144 EnumValue
145 Enum(frust_compile_until) String(typecheck) Value(5)
147 EnumValue
148 Enum(frust_compile_until) String(privacy) Value(6)
150 EnumValue
151 Enum(frust_compile_until) String(unsafety) Value(7)
153 EnumValue
154 Enum(frust_compile_until) String(const) Value(8)
156 EnumValue
157 Enum(frust_compile_until) String(compilation) Value(9)
159 EnumValue
160 Enum(frust_compile_until) String(end) Value(10)
162 ; This comment is to ensure we retain the blank line above.