1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-07-01 13:50:36 +00:00
QB64-PE/source
Matthew Kilgore 855b8dfce7 Fix declare Static array as 'String * n'
The original issue comes from b87dde8. Fellippe was fixing using
NoPrefix types with Declare Library, which uses some of the same logic
as Static arrays. Unfortunately, his change broke the `String *n` syntax
and `Bit * n` syntax because he stopped using LEFT$() to check only the
prefix of the type. Cory fixed the issue over in QB64Official/qb64#35
by reverting the code to use LEFT$() again and I pulled some of that
logic in here.

Note that I've modified his solution a bit. During testing of that fix I
noticed that `_Unsigned Integer64` no longer worked, because is because
it aliases with `_Unsigned Integer` and the shorter type gets checked
first. This may have been what Fellippe was trying to fix (since
removing the LEFT$() avoids this issue) but it's hard to say.

I addressed that issue by only applying $LEFT() to the two types that
are allowed to have text after them (`Bit` and `String`). The rest of
the types continue to use the direct string comparison that requires an
exact match. Additionally I reorganized the checks a bit to make them
easier to read and also easier to confirm all combinations are checked.
2022-10-01 14:18:53 -04:00
..
global Version 3.2.1 2022-09-24 12:17:36 -04:00
ide Allow selecting audio backend in IDE 2022-08-27 14:27:55 -04:00
subs_functions Add initial MIDI language support 2022-09-04 23:35:14 -04:00
utilities Fixing sizing logic 2022-08-25 02:58:50 +02:00
.gitignore Don't ignore .bas files in source directory 2022-04-28 17:20:45 -04:00
peLogo.png Step 10: Update remaining stuff 2022-08-12 02:54:12 +02:00
qb64pe.bas Fix declare Static array as 'String * n' 2022-10-01 14:18:53 -04:00
qb64pe.ico Step 4: Update Windows icon & resource file 2022-08-10 02:03:12 +02:00
qb64pe.png Step 2: Update Linux icon file 2022-08-10 00:48:56 +02:00