Skip to content

Commit 33cd8ca

Browse files
committed
docs: clarify V3 reporting exceptions (PR #28131 review)
1 parent 4b6fbbc commit 33cd8ca

3 files changed

Lines changed: 27 additions & 23 deletions

File tree

doc/docs.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -107,16 +107,18 @@ embedded in your `v`).
107107
### Automatic bug reports
108108

109109
To help close the remaining gaps, a successful fallback (V3 fails to build a
110-
program that the established compiler then builds) submits the V version, target
111-
OS/arch, and build options to `https://bugs.vlang.io`. When a source excerpt is
112-
included it is always a **bounded strict subset** of the failing file — a window
113-
around the failure, or a head+tail window — and the whole file is never uploaded.
110+
program that the established compiler then builds) normally submits the V
111+
version, target OS/arch, and build options to `https://bugs.vlang.io`. When a
112+
source excerpt is included it is always a **bounded strict subset** of the failing
113+
file — a window around the failure, or a head+tail window — and the whole file is
114+
never uploaded.
114115
An internal V3 compiler error on a short program (and any directory build such as
115116
`v .`) submits metadata only. A generated-C error, however, maps to a specific V
116117
file, so it can still upload a strict-subset excerpt of that file plus a few lines
117-
of context around the failing line, even when the file is short. Reporting is
118-
skipped for test compilations and in GitHub CI. You can turn it off entirely by
119-
setting the environment variable `V_C_ERROR_BUG_REPORT_DISABLED=1`.
118+
of context around the failing line, even when the file is short. Inline-assembly
119+
fallbacks are notice-only and do not submit a report; reporting is also skipped
120+
for test compilations and in GitHub CI. You can turn it off entirely by setting
121+
the environment variable `V_C_ERROR_BUG_REPORT_DISABLED=1`.
120122

121123
## Packaging V for distribution
122124
See the [notes on how to prepare a package for V](packaging_v_for_distributions.md) .

vlib/v/help/build/build-c.txt

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,14 @@ see also `v help build`.
1818
`-old-compiler` bypasses it and compiles with the established compiler in
1919
vlib/v. V already falls back to this compiler automatically when V3 cannot
2020
build an eligible program, and (unless V_C_ERROR_BUG_REPORT_DISABLED=1 is
21-
set) reports the failure to https://bugs.vlang.io so the gap can be fixed:
22-
the V version, target and build options, plus a bounded snippet of the
23-
failing V source when one is available (always a strict subset, never the
24-
whole file). An internal V3 error on a short program or a directory build
25-
such as `v .` submits metadata only, while a generated-C error can still
26-
include a strict-subset excerpt. See `v help build` for the full
27-
description of the default.
21+
set) normally reports the failure to https://bugs.vlang.io so the gap can
22+
be fixed: the V version, target and build options, plus a bounded snippet
23+
of the failing V source when one is available (always a strict subset,
24+
never the whole file). An internal V3 error on a short program or a
25+
directory build such as `v .` submits metadata only, while a generated-C
26+
error can still include a strict-subset excerpt. Inline-assembly fallbacks
27+
are notice-only; test compilations and GitHub CI also submit no report. See
28+
`v help build` for the full description of the default.
2829

2930
-cflags <flag>
3031
Pass the provided flag as is to the C compiler.

vlib/v/help/build/build.txt

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,16 @@ The default compiler:
1919
On macOS and Linux, `v` compiles with the experimental V3 compiler (vlib/v3)
2020
by default. When V3 cannot yet build an eligible program, V automatically falls
2121
back to the established compiler in vlib/v, so builds keep working. Unless the
22-
environment variable V_C_ERROR_BUG_REPORT_DISABLED=1 is set, a fallback also
23-
reports the V version, target, and build options to https://bugs.vlang.io, plus
24-
a bounded snippet of the failing V source when one is available. Any snippet is
25-
a strict subset and the whole file is never uploaded. An internal V3 compiler
26-
error on a short program or a directory build such as `v .` submits metadata
27-
only, while a generated-C error maps to a V file and can still upload a
28-
strict-subset excerpt of it, even for a short file. Pass `-old-compiler` (see
29-
`v help build-c`) to always use the established compiler and skip both the V3
30-
attempt and the reporting.
22+
environment variable V_C_ERROR_BUG_REPORT_DISABLED=1 is set, a reportable
23+
fallback also sends the V version, target, and build options to
24+
https://bugs.vlang.io, plus a bounded snippet of the failing V source when one
25+
is available. Any snippet is a strict subset and the whole file is never
26+
uploaded. An internal V3 compiler error on a short program or a directory build
27+
such as `v .` submits metadata only, while a generated-C error maps to a V file
28+
and can still upload a strict-subset excerpt of it, even for a short file.
29+
Inline-assembly fallbacks are notice-only; test compilations and GitHub CI also
30+
submit no report. Pass `-old-compiler` (see `v help build-c`) to always use the
31+
established compiler and skip both the V3 attempt and the reporting.
3132

3233
Use `v build script.vsh` to compile a `.vsh` script without running it.
3334
`v -skip-running script.vsh` works too.

0 commit comments

Comments
 (0)