Pablo computation issue with nfd?
nfd (commit #b6d54b57 to master) is currently producing incorrect output in the following cases (on both cs-osl-08 and cs-osl-11).
cameron@cs-osl-11:~/parabix-devel/build12$ bin/nfd ag62218-9 | hexdump -C
00000000 d7 a9 d6 bc e0 b7 81 0a d7 a9 d6 bc e0 b7 82 0a |................|
00000010
The correct output is produced by uconv:
cameron@cs-osl-11:~/parabix-devel/build12$ uconv -x any-nfd ag62218-9 | hexdump -C
00000000 d7 a9 d6 bc d7 81 0a d7 a9 d6 bc d7 82 0a |..............|
0000000e
The issue appears to be incorrect computatation of a character class.
The following trace shows that the computed NFD_Basis[8-11]
is D
in two cases when it should be 5
.
cameron@cs-osl-11:~/parabix-devel/build12$ bin/nfd ag62218-9 --illustrator-width=100
שּශ
שּෂ
ByteStream | ........
BasisBits[4-7] | EAA0EAA0
BasisBits[0-3] | FCCAFCDA
u8index | ..11..11
U21[20-20] | 0000
U21[16-19] | 0000
U21[12-15] | F0F0
U21[8-11] | B0B0
U21[4-7] | 2020
U21[0-3] | CADA
Insertion_BixNum | 2020
SpreadMask | 1..11..1
ExpandedBasis[20-20] | 00000000
ExpandedBasis[16-19] | 00000000
ExpandedBasis[12-15] | F000F000
ExpandedBasis[8-11] | B000B000
ExpandedBasis[4-7] | 20002000
ExpandedBasis[0-3] | C00AD00A
LV_LVT | 00000000
LIndexBixNum[4-4] | 00000000
LIndexBixNum[0-3] | 00000000
VIndexBixNum[4-4] | 00000000
VIndexBixNum[0-3] | 00000000
TIndexBixNum[4-4] | 00000000
TIndexBixNum[0-3] | 00000000
Hangul_NFD_Basis[20-20] | 00000000
Hangul_NFD_Basis[16-19] | 00000000
Hangul_NFD_Basis[12-15] | F000F000
Hangul_NFD_Basis[8-11] | B000B000
Hangul_NFD_Basis[4-7] | 20002000
Hangul_NFD_Basis[0-3] | C00AD00A
NFD_Basis[20-20] | 00000000
NFD_Basis[16-19] | 00000000
NFD_Basis[12-15] | 00000000
NFD_Basis[8-11] | 55D055D0
NFD_Basis[4-7] | EBC0EBC0
NFD_Basis[0-3] | 9C1A9C2A
OutputBasis[4-7] | DADBEB80DADBEB80
OutputBasis[0-3] | 796C071A796C072A
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information