В ArrayFilterRepeats не работает ArrayFilter. В FPC-32,64,32U,64U.
Редактировалось 5 раз(а), последний 2020-05-04 13:08:33
Этот топик читают: Гость
Ответов: 207
Рейтинг: 14
|
|||
карма: 2 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Работает, только не отсортирован массив.
|
|||
карма: 26 |
|
Ответов: 207
Рейтинг: 14
|
|||
Netspirit писал(а): Работает, только не отсортирован массив.Да Netspirit, Не подскажешь почему не хочет работать MultiBlockFind в Unicode например с такой строкой <h4>Hiasm</h4><p>’
|
|||
карма: 2 |
|
Ответов: 207
Рейтинг: 14
|
|||
Netspirit, В RegExpr.pas строка 704 {$ifndef KOL3XX} думаю была написана еще до юникода, и сейчас из-за нее нормально не работают регулярки в Unicode.
Посмотри пожалуйста, она блокирует {$IFDEF UniCode} |
|||
карма: 2 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Joiner писал(а): почему не хочет работать MultiBlockFindJoiner писал(а): и сейчас из-за нее нормально не работают регулярки в UnicodeРедактировалось 1 раз(а), последний 2020-05-05 18:28:29 |
|||
карма: 26 |
|
Ответов: 207
Рейтинг: 14
|
|||
Netspirit писал(а): А без неё? Без нее отлично. Вот сделал пример Должна быть строка без 01 в начале и 2 в конце.
|
|||
карма: 2 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Разбираюсь.
--- Добавлено в 2020-05-05 20:01:55 В StreamConvertor поставь Charset=Compiler. Исправить функции StrLComp() в файле HiAsm\compiler\FPC2\src\packages\KOLx64\kol.pas. Строка 22713:
Строка 22969:
После исправления выполнить файлы: HiAsm\compiler\FPC2\src\_make_KOL.bat
HiAsm\compiler\FPC2\src\_make_KOL_uni.bat Редактировалось 2 раз(а), последний 2020-05-05 20:01:55 |
|||
карма: 26 |
|
Ответов: 207
Рейтинг: 14
|
|||
Netspirit, Поисправлял, если вернуть в RegExpr.pas {$ifndef KOL3XX}. все равно не хочет у меня работать.
Буду уже ждать обновления. Netspirit писал(а): В StreamConvertor поставь Charset=Compiler.У меня при Compiler так почему-то + |
|||
карма: 2 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Joiner писал(а): У меня при Compiler так почему-то |
|||
карма: 26 |
|
Ответов: 1343
Рейтинг: 31
|
|||
нужны правки ASM в BenchmarkCPU и BenchmarkRAM, ошибки при компиляции, замена E на R не прокатывает)
|
|||
карма: 2 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Rysik писал(а): замена E на R не прокатывает |
|||
карма: 26 |
|
Ответов: 1343
Рейтинг: 31
|
|||
Netspirit писал(а): Во-о-о-т, а ты у нас уже понемногу в ассемблере начинаешь разбираться (в отличие от меня). Так что - вперед.неее , всё что известно, дак это смена регистров с E на R, но там же ещё и функции разные есть под 32 и 64)) |
|||
карма: 2 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Функции отличаются типами аргументов и результата, это делается прозрачно при смене компилятора (без смены названия функций).
В ассемблере для 64 бит отличаются регистры, в которых приходят аргументы функций. |
|||
карма: 26 |
|
Ответов: 1343
Рейтинг: 31
|
|||
почему тогда просто смена регистров не помогает?
|
|||
карма: 2 |
|
Ответов: 4629
Рейтинг: 749
|
|||
Rysik писал(а): почему тогда просто смена регистров не помогает?Под "функции разные" я понял что речь шла о функциях, вызываемых по имени из ASM-кода. Если имелось в виду сами ассемблерные функции, то понятно что для 32 и 64 бит это должны быть отдельные варианты, включаемые с помощью {$ifdef ...}{$else}{$endif}. Редактировалось 1 раз(а), последний 2020-05-07 14:28:20 |
|||
карма: 26 |
|