File tree Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ package parser
2
2
3
3
import (
4
4
"fmt"
5
+ "math"
5
6
"strconv"
6
7
"strings"
7
8
@@ -310,6 +311,10 @@ func (p *parser) parseSecondary() Node {
310
311
if err != nil {
311
312
p .error ("invalid hex literal: %v" , err )
312
313
}
314
+ if number > math .MaxInt {
315
+ p .error ("integer literal is too large" )
316
+ return nil
317
+ }
313
318
node := & IntegerNode {Value : int (number )}
314
319
node .SetLocation (token .Location )
315
320
return node
@@ -326,6 +331,10 @@ func (p *parser) parseSecondary() Node {
326
331
if err != nil {
327
332
p .error ("invalid integer literal: %v" , err )
328
333
}
334
+ if number > math .MaxInt {
335
+ p .error ("integer literal is too large" )
336
+ return nil
337
+ }
329
338
node := & IntegerNode {Value : int (number )}
330
339
node .SetLocation (token .Location )
331
340
return node
You can’t perform that action at this time.
0 commit comments