aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authoreldritch horrors <pennae@lix.systems>2024-03-08 04:49:08 +0100
committereldritch horrors <pennae@lix.systems>2024-03-09 00:05:41 -0700
commit87e6ac5eb706593d15d29b070eac5f05e305a787 (patch)
tree79062f2ab0e8a298de9b68419fa4094994e26e22 /doc
parent896e525681bbf696c330af4e51c5e161d3818350 (diff)
Merge pull request #9753 from 9999years/print-value-on-type-error
Print the value in `value is X while a Y is expected` error (cherry picked from commit 5f72a97092da6af28a7d2b2a50d74e9d34fae7e1) Change-Id: Idb4bc903ae59a0f5b6fb3b1da4d47970fe0a6efe
Diffstat (limited to 'doc')
-rw-r--r--doc/manual/rl-next/print-value-in-type-error.md23
-rw-r--r--doc/manual/rl-next/source-positions-in-errors.md2
-rw-r--r--doc/manual/rl-next/with-error-reporting.md4
3 files changed, 26 insertions, 3 deletions
diff --git a/doc/manual/rl-next/print-value-in-type-error.md b/doc/manual/rl-next/print-value-in-type-error.md
new file mode 100644
index 000000000..aaae22756
--- /dev/null
+++ b/doc/manual/rl-next/print-value-in-type-error.md
@@ -0,0 +1,23 @@
+---
+synopsis: Type errors include the failing value
+issues: #561
+prs: #9753
+---
+
+In errors like `value is an integer while a list was expected`, the message now
+includes the failing value.
+
+Before:
+
+```
+ error: value is a set while a string was expected
+```
+
+After:
+
+```
+ error: expected a string but found a set: { ghc810 = «thunk»;
+ ghc8102Binary = «thunk»; ghc8107 = «thunk»; ghc8107Binary = «thunk»;
+ ghc865Binary = «thunk»; ghc90 = «thunk»; ghc902 = «thunk»; ghc92 = «thunk»;
+ ghc924Binary = «thunk»; ghc925 = «thunk»; «17 attributes elided»}
+```
diff --git a/doc/manual/rl-next/source-positions-in-errors.md b/doc/manual/rl-next/source-positions-in-errors.md
index 5b210289d..1556f8b64 100644
--- a/doc/manual/rl-next/source-positions-in-errors.md
+++ b/doc/manual/rl-next/source-positions-in-errors.md
@@ -38,5 +38,5 @@ error:
| ^
5|
- error: value is a set while a string was expected
+ error: expected a string but found a set: { }
```
diff --git a/doc/manual/rl-next/with-error-reporting.md b/doc/manual/rl-next/with-error-reporting.md
index 10b020956..f6c4a36fe 100644
--- a/doc/manual/rl-next/with-error-reporting.md
+++ b/doc/manual/rl-next/with-error-reporting.md
@@ -8,7 +8,7 @@ prs: 9658
Previously an incorrect `with` expression would report no position at all, making it hard to determine where the error originated:
```
-nix-repl> with 1; a
+nix-repl> with 1; a
error:
… <borked>
@@ -27,5 +27,5 @@ error:
1| with 1; a
| ^
- error: value is an integer while a set was expected
+ error: expected a set but found an integer: 1
```