Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Вс окт 22, 2017 12:54 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 95 сообщений ]  На страницу Пред. 1 2 3 4 5 6 7 След.
Автор Сообщение
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Пн ноя 14, 2016 8:48 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4221
> В argv[0] перед путём к экзешнику ставится символ сердечко.
Это символ кодировки. Pathoswithin добавил.

Остальное проверю.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Пн ноя 14, 2016 9:23 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Пн ноя 19, 2012 5:22 pm
Сообщения: 439
О как. Странное решение.
Так, довёл до ума. Убрал это сердечко(а я думал, что это я временный костыль добавил :lol: ). Точнее, если там середечко, то оно уберётся, если там что-то другое стоять будет, то не уберётся.
Исправил я вывод warning'ов. Теперь консоль информативна, но не замусорена) На а свои отладочные выводы пока оставил. Хотя, видимо, скоро уберу.
Из проблем пока: почему-то вылетает при обработке файла keyboard.h. Я испытывал на том textreader, что ты выкладывал.


Вложения:
cmm [219.44 КБ]
26 скачиваний

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 12:43 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1192
Кстати, это сердечко означает кодировку UTF-8.


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 1:08 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пн ноя 19, 2012 5:22 pm
Сообщения: 439
Хм. То есть в русских каталогах ничего не скомпилиться... А как-то попросить старый ASCII можно? Или преобразовать? Или только вручную? И вообще, где что написано про нововведение?

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 1:55 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
GerdtR
Боюсь нигде и никак. Автор регулярно кладёт на обратную совместимость.


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 3:03 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1192
А где вообще что-то написано про этот параметр? Авторы до меня клали на планирование дальнейшего развития. И никакой альтернативы мне так и не предложили. Из всех вариантов самый совместимый.


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 4:48 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
Pathoswithin
Самый совместимый в Win с двумя наборами функций *A и *W. А не так, когда ядерное API меняют на лету.


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 6:31 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1192
Так проблемы же не с API, а с argv[0].


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 6:52 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
Pathoswithin
Это не проблема argv[0]. Это проблема всех программ. О чем 0CodErr уже написал.
Цитата:
И это проблема, конечно. Раньше пути начинались со слэша. Вот представим, что есть путь "/sys/Path/MyFile.ext". Если приложение захочет проверить (Path == "/sys/Path/MyFile.ext"), то вместо простого StrCmp(Path, "/sys/Path/MyFile.ext") придётся немного мудрить ещё.

Главное, если путь из ASCII превратился в UTF8, зачем там этот байт ? Или он внезапно может стать UTF16, UTF-32, DBCS,что-то ещё ?


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 9:06 pm 
Не в сети

Зарегистрирован: Вс окт 27, 2013 8:13 pm
Сообщения: 83
Serge писал(а):
Главное, если путь из ASCII превратился в UTF8, зачем там этот байт ? Или он внезапно может стать UTF16, UTF-32, DBCS,что-то ещё ?

Чтобы этот путь не меняя можно было передать в 70-ю функцию. Она понимает первые байты как маркеры кодировок. С другой стороны, так ли уж нужна поддержка CP866 и UTF-16 в файловых функциях? Может оставить только UTF-8 без всякого маркера?


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Вт ноя 15, 2016 9:51 pm 
Не в сети
Kernel Developer

Зарегистрирован: Ср мар 08, 2006 6:25 pm
Сообщения: 3929
akron1
По нормальному, я этот байт должен скипнуть из argv[0].


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Ср ноя 16, 2016 12:48 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пн ноя 19, 2012 5:22 pm
Сообщения: 439
Хм... теоретически можно перевести весь c-- на utf8. Только тогда исходники тоже должны быть в utf8, но текстовые редакторы у нас с utf8 не работают(или уже что-то есть?).

_________________
Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Ср ноя 16, 2016 10:41 am 
Не в сети

Зарегистрирован: Вс окт 27, 2013 8:13 pm
Сообщения: 83
Для оберон-07 вопрос решен с помощью BOM-сигнатуры в начале файла исходника. Да, редакторы (пока) не поддерживают UTF-8, но компилятору какая разница? Наличие BOM-сигнатуры указывает компилятору на использование кодировки UTF-8. Реально это влияет на подсчет символов в строках для выдачи сообщений об ошибках компиляции и длину строковых констант. Например, такой код правильный, если используется ANSI.
Код:
CASE c OF
|"ф":
|"ы":
|"п":
END;

Если UTF-8, то константы "ф", "ы", "п" будут уже два байта и программа не скомпилируется.


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Ср ноя 16, 2016 11:02 am 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 268
GerdtR писал(а):
Хм... теоретически можно перевести весь c-- на utf8. Только тогда исходники тоже должны быть в utf8, но текстовые редакторы у нас с utf8 не работают(или уже что-то есть?).
Не нужно. Максимум что нужно - добавить строковые литералы, например как это сделано в С11. Но с-- такой компилятор, что разобраться в исходниках - огромный труд.
Проще уж библиотечку конверсий UTF8<->UTF16<->CP866, etc


Вернуться к началу
 Заголовок сообщения: Re: C-- Sphinx Compiler
СообщениеДобавлено: Чт ноя 17, 2016 7:08 pm 
Не в сети
Kernel Developer
Аватара пользователя

Зарегистрирован: Чт сен 03, 2009 1:52 pm
Сообщения: 1599
Я предлагаю считать, что для PE-приложений абсолютно всё в UTF-8 без всяких маркеров - вход/выход системных функций 2,4,70,что-у-нас-там-ещё-принимает-строки, argv[0], все библиотеки. Иначе откуда, скажем, box_lib может узнать, хочет приложение строку в cp866 или в utf-8? Делать флаги для всех-всех-всех библиотек - означает дикие метастазы legacy по всей системе.

_________________
Сделаем мир лучше!


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 95 сообщений ]  На страницу Пред. 1 2 3 4 5 6 7 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB