notepad-plus-plus/lexilla/test/examples/fsharp/Literals.fs

86 lines
2.0 KiB
Forth
Raw Normal View History

Update to Scintilla 5.3.3 and Lexilla 5.2.2 update to https://www.scintilla.org/scintilla533.zip with: 1. Released 8 February 2023. 2. Fix SCI_LINESJOIN bug where carriage returns were incorrectly retained. Bug #2372. 3. Fix SCI_VERTICALCENTRECARET to update the vertical scroll position. 4. When an autocompletion list is shown in response to SCN_CHARADDED, do not process character as fill-up or stop. This avoids closing immediately when a character may both trigger and finish autocompletion. 5. On Cocoa fix character input bug where dotless 'i' and some other extended Latin characters could not be entered. The change also stops SCI_ASSIGNCMDKEY from working with these characters on Cocoa. Bug #2374. 6. On GTK, support IME context. Feature #1476. 7. On GTK on Win32, fix scrolling speed to not be too fast. Bug #2375. 8. On Qt, fix indicator drawing past left of text pane over margin. Bug #2373, Bug #1956. 9. On Qt, allow scrolling with mouse wheel when scroll bar hidden. and https://www.scintilla.org/lexilla522.zip with 1. Released 8 February 2023. 2. C++: Fix keywords that start with non-ASCII. Also affects other lexers. Issue #130. 3. Matlab: Include more prefix and suffix characters in numeric literals. Issue #120. 4. Matlab: More accurate treatment of line ends inside strings. Matlab and Octave are different here. Issue #18. 5. Modula-3: Don't treat identifier suffix that matches keyword as keyword. Issue #129. 6. Modula-3: Fix endless loop in folder. Issue #128. 7. Modula-3: Fix access to lines beyond document end in folder. Issue #131. 8. Python: Don't highlight match and case as keywords in contexts where they probably aren't used as keywords. Pull request #122. 9. X12: Support empty envelopes. Bug #2369. update CMakeLists.txt to latest changes within vcxproj file Close #13082
2023-02-09 16:57:24 +00:00
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