#DOCUMENTATION by cg
class: Integer
changed: #readFrom:onError:
be more tolerant w.r.t. signed radix numbers.
--- a/Integer.st Thu Sep 01 20:53:39 2016 +0200
+++ b/Integer.st Thu Sep 01 21:03:29 2016 +0200
@@ -286,10 +286,18 @@
"-xxr<number> is invalid; should be xxr-<val>"
negative ifTrue:[
- 'Integer [warning]: invalid (negative) radix ignored' errorPrintCR.
- negative := false
+ 'Integer [warning]: invalid (negative) radix; please use xxr-<val> instead of -xxr<number>' errorPrintCR.
+ "/ negative := false
].
str next.
+ nextChar := str peekOrNil.
+ nextChar == $- ifTrue:[
+ negative ifTrue:[
+ 'Integer [warning]: invalid double sign; please use xxr-<val> instead of -xxr<number>' errorPrintCR.
+ ].
+ negative := true.
+ str next.
+ ].
value := self readFrom:str radix:value
].
negative ifTrue:[