Merge: Fix the old bug where (-0.1).to_s == "0.-1"
[nit.git] / share / man / nitg.md
1 % NITG(1)
2
3 # NAME
4
5 Compiles Nit programs.
6
7 # SYNOPSYS
8
9 nitg [*options*]...
10
11 # OPTIONS
12
13 `-W`, `--warn`
14 :   Show more warnings
15
16 `-w`, `--warning`
17 :   Show/hide a specific warning
18
19 `-q`, `--quiet`
20 :   Do not show warnings
21
22 `--stop-on-first-error`
23 :   Stop on first error
24
25 `--no-color`
26 :   Do not use color to display errors and warnings
27
28 `--log`
29 :   Generate various log files
30
31 `--log-dir`
32 :   Directory where to generate log files
33
34 `-h`, `-?`, `--help`
35 :   Show Help (This screen)
36
37 `--version`
38 :   Show version and exit
39
40 `--set-dummy-tool`
41 :   Set toolname and version to DUMMY. Useful for testing
42
43 `-v`, `--verbose`
44 :   Verbose
45
46 `--bash-completion`
47 :   Generate bash_completion file for this program
48
49 `--stub-man`
50 :   Generate a stub manpage in pandoc markdown format
51
52 `--disable-phase`
53 :   DEBUG: Disable a specific phase; use `list` to get the list.
54
55 `-I`, `--path`
56 :   Set include path for loaders (may be used more than once)
57
58 `--only-parse`
59 :   Only proceed to parse step of loaders
60
61 `--only-metamodel`
62 :   Stop after meta-model processing
63
64 `--ignore-visibility`
65 :   Do not check, and produce errors, on visibility issues.
66
67 `-o`, `--output`
68 :   Output file
69
70 `--dir`
71 :   Output directory
72
73 `--no-cc`
74 :   Do not invoke C compiler
75
76 `--no-main`
77 :   Do not generate main entry point
78
79 `--make-flags`
80 :   Additional options to make
81
82 `--compile-dir`
83 :   Directory used to generate temporary files
84
85 `--hardening`
86 :   Generate contracts in the C code against bugs in the compiler
87
88 `--no-shortcut-range`
89 :   Always insantiate a range and its iterator on 'for' loops
90
91 `--no-check-covariance`
92 :   Disable type tests of covariant parameters (dangerous)
93
94 `--no-check-attr-isset`
95 :   Disable isset tests before each attribute access (dangerous)
96
97 `--no-check-assert`
98 :   Disable the evaluation of explicit 'assert' and 'as' (dangerous)
99
100 `--no-check-autocast`
101 :   Disable implicit casts on unsafe expression usage (dangerous)
102
103 `--no-check-null`
104 :   Disable tests of null receiver (dangerous)
105
106 `--no-check-all`
107 :   Disable all tests (dangerous)
108
109 `--typing-test-metrics`
110 :   Enable static and dynamic count of all type tests
111
112 `--invocation-metrics`
113 :   Enable static and dynamic count of all method invocations
114
115 `--isset-checks-metrics`
116 :   Enable static and dynamic count of isset checks before attributes access
117
118 `--stacktrace`
119 :   Control the generation of stack traces
120
121 `--no-gcc-directive`
122 :   Disable a advanced gcc directives for optimization
123
124 `--release`
125 :   Compile in release mode and finalize application
126
127 `--global`
128 :   Use global compilation
129
130 `--separate`
131 :   Use separate compilation
132
133 `--no-inline-intern`
134 :   Do not inline call to intern methods
135
136 `--no-union-attribute`
137 :   Put primitive attibutes in a box instead of an union
138
139 `--no-shortcut-equal`
140 :   Always call == in a polymorphic way
141
142 `--inline-coloring-numbers`
143 :   Inline colors and ids (semi-global)
144
145 `--inline-some-methods`
146 :   Allow the separate compiler to inline some methods (semi-global)
147
148 `--direct-call-monomorph`
149 :   Allow the separate compiler to direct call monomorph sites (semi-global)
150
151 `--skip-dead-methods`
152 :   Do not compile dead methods (semi-global)
153
154 `--semi-global`
155 :   Enable all semi-global optimizations
156
157 `--colo-dead-methods`
158 :   Force colorization of dead methods
159
160 `--tables-metrics`
161 :   Enable static size measuring of tables used for vft, typing and resolution
162
163 `--erasure`
164 :   Erase generic types
165
166 `--no-check-erasure-cast`
167 :   Disable implicit casts on unsafe return with erasure-typing policy (dangerous)
168
169 `--rta`
170 :   Activate RTA (implicit with --global and --separate)
171
172 `-m`
173 :   Additionals module to min-in
174
175 # SEE ALSO
176
177 The Nit language documentation and the source code of its tools and libraries may be downloaded from <http://nitlanguage.org>