Idris2/tests/chez/chez006/expected
Sören Tempel c725b11c89 Flush standard out after writing prompt to it
On Unix-like operating systems stdio.h is usually line-buffered. As
putStr uses fputs(3) from stdio.h internally, output will be written to
standard out after a newline character is written to the buffer. Since
the prompt does not contain a newline, it will only be written to
standard output after the user presses return. I encountered this issue
on Alpine Linux which uses musl libc (instead of glibc). However, I
believe this issue is likely also reproducible with glibc. This commit
fixes this issue by flushing standard output after writing the prompt to
it. Surprisingly, `src/Idris/IDEMode/REPL.idr` already does this
correctly, `src/Idris/REPL.idr` does not though.
2021-04-09 15:17:00 +01:00

37 lines
793 B
Plaintext

1/1: Building TypeCase (TypeCase.idr)
Main> "Nat"
"List of Nat"
"List of Something else"
"List of Something else"
"List of Bool"
"Int"
"Something else"
"List of Type"
"List of Int"
43
42
Main> Main.strangeId is total
Main> Main.strangeId': strangeId' _
Main> Bye for now!
1/1: Building TypeCase2 (TypeCase2.idr)
Error: While processing left hand side of strangeId. Can't match on Nat (Erased argument).
TypeCase2.idr:5:14--5:17
1 | data Bar = MkBar
2 | data Baz = MkBaz
3 |
4 | strangeId : a -> a
5 | strangeId {a=Nat} x = x+1
^^^
Error: While processing left hand side of foo. Can't match on Nat (Erased argument).
TypeCase2.idr:9:5--9:8
5 | strangeId {a=Nat} x = x+1
6 | strangeId x = x
7 |
8 | foo : (0 x : Type) -> String
9 | foo Nat = "Nat"
^^^