aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/src/io_lib_fread.erl
diff options
context:
space:
mode:
authorHans Bolinder <[email protected]>2013-08-21 13:50:20 +0200
committerHans Bolinder <[email protected]>2013-08-21 15:53:37 +0200
commita474bdfda30a3b6a520bf2be4b4550b251095703 (patch)
treec898f1d82001871ee851c7a8f2393e6599494485 /lib/stdlib/src/io_lib_fread.erl
parent420fe40a688f88cbcd6c716cc01a5f87908bc5ee (diff)
downloadotp-a474bdfda30a3b6a520bf2be4b4550b251095703.tar.gz
otp-a474bdfda30a3b6a520bf2be4b4550b251095703.tar.bz2
otp-a474bdfda30a3b6a520bf2be4b4550b251095703.zip
Correct the specifications of io_lib:fread/2,3
Thanks to Chris King and Kostis Sagonas for pinpointing the bug.
Diffstat (limited to 'lib/stdlib/src/io_lib_fread.erl')
-rw-r--r--lib/stdlib/src/io_lib_fread.erl9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/stdlib/src/io_lib_fread.erl b/lib/stdlib/src/io_lib_fread.erl
index 92a34995b8..491e1f40d7 100644
--- a/lib/stdlib/src/io_lib_fread.erl
+++ b/lib/stdlib/src/io_lib_fread.erl
@@ -41,9 +41,9 @@
Format :: string(),
Return :: {'more', Continuation1 :: io_lib:continuation()}
| {'done', Result, LeftOverChars :: string()},
- Result :: {'ok', InputList :: io_lib:chars()}
+ Result :: {'ok', InputList :: [io_lib:fread_item()]}
| 'eof'
- | {'error', {'read', What :: io_lib:fread_error()}}.
+ | {'error', {'fread', What :: io_lib:fread_error()}}.
fread([], Chars, Format) ->
%%io:format("FREAD: ~w `~s'~n", [Format,Chars]),
@@ -101,11 +101,12 @@ fread_line(Format0, Line, N0, Results0, More, Newline) ->
-spec fread(Format, String) -> Result when
Format :: string(),
String :: string(),
- Result :: {'ok', InputList :: io_lib:chars(), LeftOverChars :: string()}
+ Result :: {'ok', InputList :: [io_lib:fread_item()],
+ LeftOverChars :: string()}
| {'more', RestFormat :: string(),
Nchars :: non_neg_integer(),
InputStack :: io_lib:chars()}
- | {'error', What :: term()}.
+ | {'error', {'fread', What :: io_lib:fread_error()}}.
fread(Format, Line) ->
fread(Format, Line, 0, []).