Size: a a a

Compiler Development

2020 February 29

BD

Berkus Decker in Compiler Development
int const * это мутабельный указатель на константный инт и так далее
источник

Т8

Т-34 85 in Compiler Development
Berkus Decker
это то же самое что int const * const - константный указатель на константный инт
а зачем так писать, если во всех остальных языках квалификатор пишут перед типом?
источник

BD

Berkus Decker in Compiler Development
Т-34 85
а зачем так писать, если во всех остальных языках квалификатор пишут перед типом?
потому что это си, здесь можно в любом порядке, но текст правила я тебе написал выше
источник

BD

Berkus Decker in Compiler Development
вот оно
источник

BD

Berkus Decker in Compiler Development
Переслано от Berkus Decker
const applies to the thing on the left, unless there's nothing on the left, then it applies to the thing on the right
источник

BD

Berkus Decker in Compiler Development
не цепляйся за синтаксические штуки, тут важна семантика
источник

Т8

Т-34 85 in Compiler Development
Berkus Decker
потому что это си, здесь можно в любом порядке, но текст правила я тебе написал выше
да запретить так писать во фронте - и дело в шляпе
источник

DP

Dmitry Ponyatov in Compiler Development
Alex
Я пытаюсь понять что Вы хотите. Если "умный" простановщик только там где не было записей, то в чём смысл, он ошибок не найдет. Если "тупой", который везде подряд, то в чём смысл - он сплошные ложноположительные срабатывания давать будет
просто имеется в виду выкинуть из языка const и добавить mut — по умолчанию все const
источник

Т8

Т-34 85 in Compiler Development
Dmitry Ponyatov
просто имеется в виду выкинуть из языка const и добавить mut — по умолчанию все const
да, как в расте, но не раст
источник

BD

Berkus Decker in Compiler Development
Т-34 85
да запретить так писать во фронте - и дело в шляпе
в своем языке - делай что угодно
источник

BD

Berkus Decker in Compiler Development
сишку тебе не простят примерно миллиарды строк кода которые вдруг перестанут собираться
источник

Т8

Т-34 85 in Compiler Development
Berkus Decker
в своем языке - делай что угодно
да, в своём языке, который будет использовать си/сипипи как бэк
источник

BD

Berkus Decker in Compiler Development
Т-34 85
да, как в расте, но не раст
хороший план, все годные языки выросли из такого же набора требований
источник

BD

Berkus Decker in Compiler Development
Dmitry Ponyatov
просто имеется в виду выкинуть из языка const и добавить mut — по умолчанию все const
я бы тоже был рад если б в плюсах это было по умолчанию, задолбался дописать конст везде в коде 5 летней давности
источник

MM

Mikhail Maltsev in Compiler Development
Вообще в комитете C++ есть подобные идеи: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1881r1.html#enforce-const-or-mutable-for-variables
Если уж не про const/mutable то хотя бы про чистку языка от устаревших фич и механизмы для плавной миграции
источник

A

Alex Ф-ф-фэils!🌠︙ in Compiler Development
Mikhail Maltsev
Вообще в комитете C++ есть подобные идеи: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1881r1.html#enforce-const-or-mutable-for-variables
Если уж не про const/mutable то хотя бы про чистку языка от устаревших фич и механизмы для плавной миграции
Если получится адаптировать версионирование,  то такое ломающее поведение могут принять
источник

BD

Berkus Decker in Compiler Development
Alex Ф-ф-фэils!🌠︙
Если получится адаптировать версионирование,  то такое ломающее поведение могут принять
но т.к. версионирование - ломающее изменение, то не примут :D
источник

A

Alex Ф-ф-фэils!🌠︙ in Compiler Development
Berkus Decker
но т.к. версионирование - ломающее изменение, то не примут :D
Концепт "эпох" и "forward"/" backward" compat позволяет мигрировать же аккуратно; но в целом да
источник

BD

Berkus Decker in Compiler Development
Alex Ф-ф-фэils!🌠︙
Концепт "эпох" и "forward"/" backward" compat позволяет мигрировать же аккуратно; но в целом да
но для этого эпоху надо будет где-то указывать, а для этого сначала надо концепцию билд конфигурации ввести )
источник

A

Alex Ф-ф-фэils!🌠︙ in Compiler Development
Berkus Decker
но для этого эпоху надо будет где-то указывать, а для этого сначала надо концепцию билд конфигурации ввести )
Да, в пропосале было на уровне module unit
источник