Explorar o código

parser: fix range of valid hex chars

Manfred Kroehnert %!s(int64=12) %!d(string=hai) anos
pai
achega
58699e377f
Modificáronse 2 ficheiros con 360 adicións e 190 borrados
  1. 359 189
      js/parser.js
  2. 1 1
      js/parser.pegjs

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 359 - 189
js/parser.js


+ 1 - 1
js/parser.pegjs

@@ -23,7 +23,7 @@ number         = n:(hex / float / integer) {
                      return smalltalk.ValueNode._new()
                             ._value_(n)
                  }
-hex            = neg:[-]? "16r" num:[0-9a-zA-Z]+ {return parseInt((neg + num.join("")), 16)}
+hex            = neg:[-]? "16r" num:[0-9a-fA-F]+ {return parseInt((neg + num.join("")), 16)}
 float          = neg:[-]?int:[0-9]+ "." dec:[0-9]+ {return parseFloat((neg + int.join("") + "." + dec.join("")), 10)}
 integer        = neg:[-]?digits:[0-9]+ {return (parseInt(neg+digits.join(""), 10))}
 literalArray   = "#(" ws lits:(lit:literal ws {return lit._value()})* ws ")" {

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio