Size: a a a

2020 February 07

AK

Alexander Krivitskiy in rust_offtopic
Alexander Krivitskiy
Ну проверь

void f() {//anything}
...
f(1,2,3,4,5,6)
А если напишешь void f(void) - то получишь ошибку при вызове
источник

T

Tux in rust_offtopic
у меня тайпскрипт с target: "es3" сконфигурирован, но при этом он экспорты делает как в es6 (т.е. не через module.exports).

Проблема в том, что я теперь не могу эти модули использовать в mocha т.к. там модули импортируются через require.

Как научить тайпскрипт транспайлить это дело совместимо с ноджсом (и соответственно, мокой)?
источник

LC

Lone Coder in rust_offtopic
Tux
у меня тайпскрипт с target: "es3" сконфигурирован, но при этом он экспорты делает как в es6 (т.е. не через module.exports).

Проблема в том, что я теперь не могу эти модули использовать в mocha т.к. там модули импортируются через require.

Как научить тайпскрипт транспайлить это дело совместимо с ноджсом (и соответственно, мокой)?
"compilerOptions": {
       "module": "commonjs",
источник

LC

Lone Coder in rust_offtopic
вот эта штука отвечает за способ экспорта в странспилированном коде
источник

T

Tux in rust_offtopic
о, спасибо)
источник

T

Tux in rust_offtopic
а я думал это за способ импорта в исходном тс отвечает
источник

LC

Lone Coder in rust_offtopic
источник

LC

Lone Coder in rust_offtopic
источник

LC

Lone Coder in rust_offtopic
сложнейший практический вопрос по программированию у меня тут...
источник

LC

Lone Coder in rust_offtopic
Как заставить себя прочитать книгу?
источник

AZ

Alex Zhukovsky in rust_offtopic
не читай
источник

LC

Lone Coder in rust_offtopic
я уже долго не читаю, но в то же время собираюсь и хочется
источник

AZ

Alex Zhukovsky in rust_offtopic
если хчоется - то прочитаешь
источник

AZ

Alex Zhukovsky in rust_offtopic
все же просто)
источник

DF

Dollar Føølish in rust_offtopic
Alexander Krivitskiy
Вспомнил тут один интересный баг, с которым неделю возился. В файлах А и Б есть одинаковые inline функции GetPort(); они обе возвращают разные порты. Эти файлы оба косвенно инклудятся в файл C, где GetPort() вызывается. В результате вызывался GetPort из А, а рассчитывали на из Б. Уважаемые читатели стандарта, почему это скомпилилось, а не бросило ambiguous ошибку?
Потому что инлайн запускает другую ветку правила одр
источник

DF

Dollar Føølish in rust_offtopic
В главе про one definition rule в стандарте это
источник

DF

Dollar Føølish in rust_offtopic
Грубо говоря, нарушение одр это уб, а не амбигьюити эррор
источник

DF

Dollar Føølish in rust_offtopic
При идентичных дефинишнах Ред Прайм правильно говорит, линкер должен вырезать
источник

DF

Dollar Føølish in rust_offtopic
А если уж сам навесил инлайн, то ебись с ним (нарушением одр) сам
источник

DF

Dollar Føølish in rust_offtopic
На этапе препроцессинга инлайн не заменяется константой. Инлайн это принципиально конструкция этапа компиляции
источник