blob: 22d5d9acd1602a2c41a35c3b38168d41f2b818be (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
/* This took me literally all day.
*/
trait RejectedLiterals {
def missingHex: Int = { 0x } // line 4: was: not reported, taken as zero
def leadingZeros: Int = { 01 } // line 6: no leading zero
def tooManyZeros: Int = { 00 } // line 8: no leading zero
def zeroOfNine: Int = { 09 } // line 10: no leading zero
def orphanDot: Int = { 9. } // line 12: ident expected
def zeroOfNineDot: Int = { 09. } // line 14: malformed integer, ident expected
def noHexFloat: Double = { 0x1.2 } // line 16: ';' expected but double literal found.
}
trait Braceless {
def missingHex: Int = 0x // line 22: was: not reported, taken as zero
def leadingZeros: Int = 01 // line 24: no leading zero
def tooManyZeros: Int = 00 // line 26: no leading zero
def zeroOfNine: Int = 09 // line 28: no leading zero
def orphanDot: Int = 9. // line 30: ident expected
def zeroOfNineDot: Int = 09. // line 32: malformed integer, ident expected
def noHexFloat: Double = 0x1.2 // line 34: ';' expected but double literal found.
}
trait MoreSadness {
def tooTiny: Float = { 0.7e-45f } // floating point number too small
def twoTiny: Double = { 2.0e-324 } // double precision floating point number too small
def tooHuge: Float = { 3.4028236E38f } // floating point number too large
def twoHuge: Double = { 1.7976931348623159e308 } // double precision floating point number too large
}
|