File: Literals.fs

package info (click to toggle)
codequery 1.0.1%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 17,860 kB
  • sloc: cpp: 151,420; xml: 16,576; python: 5,602; ansic: 5,487; makefile: 559; perl: 496; ruby: 209; sql: 194; sh: 106; php: 53; vhdl: 51; erlang: 47; objc: 22; lisp: 18; cobol: 18; modula3: 17; asm: 14; fortran: 12; ml: 11; tcl: 6
file content (85 lines) | stat: -rw-r--r-- 2,028 bytes parent folder | download | duplicates (5)
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
namespace Literals

module Issue110 =
    let hexA = +0xA1B2C3D4
    let hexB = -0xCC100000

    // regression checks
    let hexC = 0xCC100000
    let binA = +0b0000_1010
    let binB = -0b1010_0000
    let binC = 0b1010_0000
    let octA = +0o1237777700
    let octB = -0o1237777700
    let octC = 0o1237777700
    let i8a = +0001y
    let i8b = -0001y
    let u8 = 0001uy
    let f32a = +0.001e-003
    let f32b = -0.001E+003
    let f32c = 0.001e-003
    let f128a = +0.001m
    let f128b = -0.001m
    let f128c = 0.001m

    // invalid literals
    let hexD = 0xa0bcde0o
    let hexE = +0xa0bcd0o
    let hexF = -0xa0bcd0o
    let binD = 0b1010_1110xf000
    let binE = +0b1010_1110xf000
    let binF = -0b1010_1110xf000
    let binG = 0b1010_1110o
    let binH = +0b1010_1110o
    let binI = -0b1010_1110o
    let octD = 0o3330xaBcDeF
    let octE = +0o3330xaBcDe
    let octF = -0o3330xaBcDe
    let octG = 0o3330b
    let octH = 0o3330b
    let octI = 0o3330b

module Issue111 =
    // invalid literals
    let a = 0000_123abc
    let b = +000_123abc
    let c = -0001_23abc
    let d = 00123_000b
    let e = +0123_000o
    let f = -0123_000xcd

module Issue112 =
    let i64 = 0001L
    let u64 = 001UL
    let f32a = 001.F
    let f32b = +01.0F
    let f32c = -01.00000F
    let f32d = 0b0000_0010lf
    let f32e = 0o000_010lf
    let f32f = 0x0000000000000010lf
    let f64a = 0b0000_0010LF
    let f64b = 0o000_010LF
    let f64c = 0x0000000000000010LF
    let f128a = 001.M
    let f128b = +01.0M
    let f128c = -01.00000M

    // regression checks
    let i32 = -0001l
    let u32 = +001ul
    let i128 = 9999999999999999999999999999I
    let f32g = 001.f
    let f32h = +01.0f
    let f32i = -01.00000f
    let f64d = 010000e+009
    let f64e = +001.0e-009
    let f64f = -001.e+009
    let f128d = 001.m
    let f128e = +01.0m
    let f128f = -01.00000m

    // arithmetic expressions
    let a = -001.f+01.0F
    let b = +0b0111_111UL-0x100UL
    let c = -01.0F + +001.f
    let d = -0x100UL - +0b0111_111UL