Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

[ новости /+++ | форум | теги |    ]

Национальные комитеты ISO отклонили принятие стандарта C++26

04.11.2026 15:20 (MSK)

Голосование национальных комитетов ISO (NB, National Bodies) завершилось отказом утверждения международного стандарта C++26, финальный вариант спецификации для которого был принят в марте. Это первый подобный случай в истории развития основного стандарта C++. Из возможных путей развития событий отмечается выставление переработанного черновика стандарта на новое голосование национальных комитетов, возвращение черновика на стадию рассмотрения комитетом по стандартизации языка C++, публикация в виде технической спецификации, а не стандарта, или отмена проекта C++26 (возврат к C++23 и перенос всех утверждённых нововведений в C++29 c повторным согласованием всех предложений).

Основной причиной отклонения стандарта стало включение в язык элементов контрактного программирования (Contracts), позволяющих определять формальные спецификации интерфейсов при помощи трёх новых операторов: pre (предусловие), post (постусловие) и contract_assert (проверка утверждения). Представители нескольких национальных комитетов посчитали данную функциональность недостаточно зрелой, несмотря на то, что при утверждении рабочей группой WG21 за неё проголосовали более 2/3 участников. Изначально, поддержку контрактного программирования намеревались включить в стандарт C++20, но отправили на доработку.

Ситуация усугубляется нарушением устоявшейся практики голосования, в соответствии с которой представители национальных комитетов ISO соглашались с компромиссами, ранее согласованными в рабочих группах, и голосовали против стандарта только при обнаружении до этого не замеченных недостатков или при выявлении процедурных ошибок. На этот раз, по мнению члена комитета по стандартизации C++ из Германии, при голосовании против использовались аргументы, которые уже были рассмотрены и отвергнуты рабочей группой WG21 на предыдущих этапах подготовки спецификации.

Следующее заседание рабочей группы намечено на 16 ноября и пока не ясно смогут ли участники договориться в ситуации пошатнувшегося доверия. Для дальнейшего продвижения спецификации C++26 или её отмены требуется достижение консенсуса, но противники контрактного программирования не намерены менять свою позицию, а сторонники не хотят обесценивать многолетнюю работу.

  1. Главная ссылка к новости (https://news.ycombinator.com/i...)
  2. OpenNews: Утверждён стандарт C++26
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/66614-cpp
Ключевые слова: cpp, standard
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (47) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Ваня фанат СПО из подмосковья (?), 15:54, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/–
    > а сторонники не хотят обесценивать многолетнюю работу.

    применимо ко всему C++ в целом

     
  • 1.3, Аноним (3), 16:00, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/–
    Contract violation handler позволяет:

    1. std::terminate

    2. std::abort

    3. Terminate execution immediately.

    Зачем оно надо в таком виде? В частности, при невозможости в рантайме залогировать и проигнорировать нарушение контракта?

     
     
  • 2.20, fidoman (ok), 16:37, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    Плюсану, при наличии эксепшнов нафига эта сишная хмарь?
     
  • 2.29, Вадим Жуков (?), 16:47, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Есть evaluation semantic: ignore, observe, enforce, quick-enforce.
     
     
  • 3.51, Аноним (3), 17:29, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    это ж всё compile-time? А исходно про рантайм-решения решение спрашивали
     

  • 1.4, Аноним (4), 16:02, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +13 +/–
    Язык слишком простой и понятный, нужно его ещё больше раздуть, так держать комитерасты :)
     
  • 1.6, Страуснетруп (?), 16:11, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/–
    Хоть кто-то в комитете осмелился остановить это безумие в виде современных плюсов, молодцы!
     
  • 1.7, Аноним (7), 16:16, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    > Национальные комитеты ISO отклонили принятие стандарта C++26

    может наконец-то раст стандартизируют.

     
     
  • 2.11, Аноним (11), 16:20, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +7 +/–
    Растики не то что отклонить стандарт не смогут они даже коммитет собарть не смогут. Потому что этому прищемили права, у того месячные хотя он мужик на самом деле, третий ненавидит коммитеты и вообще за анархию. И всё решения принмает какой-то вася который фичи клепает по KPI 10 фич в неделю иначе лишат донатов и финансирования.
     
     
  • 3.15, Пишу с толчка (?), 16:31, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +3 +/–
    Точно подмечено!
    Проблема раста не в самом языке, а в его сообществе.
     
     
  • 4.22, Аноним (22), 16:39, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Точно подмечено!

    Молодец, отлично подлизнул!

    > Проблема раста не в самом языке, а в его сообществе.

    А у раста есть проблемы?

    Второй язык добавленный в ядро (и не хваленый С++)
    Используется как крупнейшими разработчиками софта (гугл, майкрософт, амазон) и железа (нвидия и амд), так и крупными компаниями (клоудфларя, каноникл).
    Ну и васянами, конечно.
    Миллионы строк когда работающие у сотен миллионов пользователей.

    У раста проблем нет.


     
     
  • 5.26, Вечный странник (?), 16:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Вы - доказательство проблем раста)
     
     
  • 6.41, Аноним (41), 17:11, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Но я не пишу на расте, мне плюсов хватает ¯\_(ツ)_/¯
    А вот СИшников не люблю за их узколобость.

    Хотя немного приятно, что ГЦЦ они без с++ собрать не смогут))

     
  • 5.36, Аноним (36), 16:58, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/–
    >Используется как крупнейшими разработчиками софта (гугл, майкрософт, амазон) и железа (нвидия и амд), так и крупными компаниями (клоудфларя, каноникл).

    Увы, но раст не нужен. Это становится очевидно по спискам популярности языков.

    >Миллионы строк когда работающие у сотен миллионов пользователей.

    У раста миллионы строк работающие у миллионов пользователей, это правда. Однако у С и С++ миллиарды строк работающие у миллиардов пользователей.

    >У раста проблем нет.

    Больного никак стабилизировать не могут.

     
     
  • 6.47, Аноним (47), 17:19, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Увы.. (хотя нет, не увы, а "к счастью") ты не разработчик гугла, майкрософта, MESA или ядра линукс.
    А они сами выбирают раст и добавляют в свои проекты.

    > У раста миллионы строк работающие у миллионов пользователей, это правда. Однако у С и С++ миллиарды строк работающие у миллиардов пользователей.

    Работающих все хуже и хуже.
    Поток дыреней найденных в ядре, как-то не прекращается.
    А исправлять по 1-2 тысячи CVE - занятие, думаю, не очень приятное.

     
  • 5.45, vibecoder (?), 17:14, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > У раста проблем нет.

    Есть у его комьюнити. Из-за токсичности и вы тому пример.

     
  • 4.25, Ivan_83 (ok), 16:42, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –3 +/–
    Там и язык и сообщество стоят друг друга.
     
  • 3.19, Аноним (19), 16:35, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    А зачем им комитет?
    Что бы было как в плюсах "мы три года утверждали какую-ту фигню и будем обсуждать еще 3 года, если не получится - то еще 3... Ули нам торопиться".

    > И всё решения принмает какой-то вася который фичи клепает по KPI 10 фич в неделю иначе лишат донатов и финансирования.

    О господи, да что ты такое несешь?! (с)

    Кажется, про то как в расте утверждают RFC, ты знаешь по рассказам пацанов за гаражами.

     
     
  • 4.35, Аноним (11), 16:58, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Например чтобы раст можно было использовать в реально полезных задачах, а не в ripgrep.
     
     
  • 5.44, Аноним (41), 17:13, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Например андроид.
    Или клаудфларя.
    Или Rusticl который заменил Clover.
    И таких важных программ десятки.

    ps а чем тебе "ripgrep" не угодил?

     

  • 1.8, Аноним (8), 16:17, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Контракты та ещё шляпа. В чём проблема исключить их из стандарта и перенести в TR?
    В целом, в cpp многовато не слишком нужных вещей, которые явно добавлены т.к. "надо же развивать язык".
     
     
  • 2.23, Вечный странник (?), 16:40, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Контракты - довольно логичный ход для увеличения безопасности C++.
     

  • 1.9, Аноним (11), 16:17, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/–
    Кому надо это контрактное ненужно пусть используют другие языки.
     
  • 1.10, Аноним (8), 16:20, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/–
    Последняя существенная фишка добавленная в cpp - это лямбды в cpp11. Остальные нововведения такое себе.
     
     
  • 2.12, Medved (??), 16:26, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    Рефлексия в с++26, модули в с++20
     
     
  • 3.48, Инопланетянин (?), 17:24, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > модули в с++20

    В открытых проектах модулей не встречал. Кто ими пользуется?

     
  • 2.13, Аноним (13), 16:26, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    ну ващето, constexpr и consteval тоже полезно. а ещё variadic template удобно использовать.
     
  • 2.27, Ivan_83 (ok), 16:43, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Забавно как тут народ расписался в том что пишет на диалектах С :)
    Одни одно подмножество юзают а другие другое...
     
     
  • 3.31, Вадим Жуков (?), 16:49, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Забавно когда с умным видом говорят про C, имея в виду C++. (нет)
     
  • 3.32, Аноним (32), 16:52, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Забавно как тут народ расписался в том что пишет на диалектах С

    "Диалект" это твои фантазии.

    > Одни одно подмножество юзают а другие другое...

    Люди используют разные версии стандарт и разные фичи.
    Но о чем говорить с человеком, который ставит в пример убогий недо-язык, в который bool добавляли 50+ лет, а строкового типа до сих пор нет 🤣?


     
     
  • 4.42, Аноним (42), 17:11, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    А зачем на Си строки обрабатывать?
     
     
  • 5.46, Аноним (46), 17:16, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Действительно, зачем в софте обрабатывать строки 🤔
    Ну разве что хеллоуворлд.. хотя нет, там тоже строка есть.

    А вот в стд строковый тип нужен чтобы не писать одни и те же велосипеды кадый раз.
    Чтобы была поддержка Unicode (не самая лучшая, но лучше чем в СИшке).

     
  • 2.53, Инопланетянин (?), 17:37, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    11 move semantic, constexpr, auto, smart pointers, range-based for, lambdas, threads
    17 variadic templates, variant, optional, structured bindings, filesystem
    20 concepts, ranges, span, print/format, coroutines, location
    23 consteval, expected, stacktrace

    + в последних версиях можно писать атрибуты [[likely]]/[[unlikely]], [[ununsed]], [[fallthrough]] и др не прибегая к макросам и интринсикам.  

     

  • 1.14, Пишу с толчка (?), 16:28, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/–
    Будучи студентом, так и не понял смысла в плюсах. Какой-то Си переделанный с кучей всего ненужного!
     
     
  • 2.18, Аноним (18), 16:34, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • –2 +/–
    Ну поэтому ты и пишешь, откуда пишешь)

    С учетом того что значительная часть ПО написано как раз на нем - от браузеров до ОС, игровых движков и сред разработки.

     
     
  • 3.24, Ivan_83 (ok), 16:40, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Длмя меня значительная (по колличеству) часть ПО написана на С.
    На крестах только монструозные проекты типа компеляторов, браузеров и игор.
     
     
  • 4.38, Аноним (38), 17:00, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/–
    > Длмя меня значительная (по колличеству) часть ПО написана на С.

    Твое мнение никого не волнует. Условный тумба-юмба живущий в джунглях тоже не использует ПО ни на С, ни на С++)
    Есть статистика использования и распространенность ПО.

    > На крестах только монструозные проекты типа компеляторов, браузеров и игор.

    И что бы ты делал без компиляторов?
    Как бы ты компилировали ядро линукса, ненужнобздю и так далее?
    СИдел бы и смотрел на крутой СИшный код, бгг)?


     

  • 1.17, Сэм Альтман (?), 16:33, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Все правильно мы обучаем наши нейросети контентом до 2023 года, иначе получаем коллапс моделей. Нам не выгодно новое...
     
  • 1.28, вах (ok), 16:46, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/–
    Переусложнения ради переусложнений!
     
     
  • 2.34, Вечный странник (?), 16:57, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Правильно, нужно писать на brainfuck!
     
     
  • 3.37, Аноним (11), 17:00, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Это уже про упростить чтобы переусложнить.
     

  • 1.33, Вечный странник (?), 16:54, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    Честно, выглядит как попытка уничтожить C++ изнутри, навести раздор в рядах разработчиков для перевода всех на "безопасные" языки по типу Rust. И тут проблема не в таких языках, тот же Rust очень даже хороший язык - проблема в комьюнити Rust.
     
     
  • 2.49, Аноним (49), 17:25, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Ну вообще-то предложенные contracts c pre post были реализованы в ADA кстати... большой текст свёрнут, показать
     
  • 2.50, Павел (??), 17:28, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Заговорщики они везде, да, как же иначе
     
  • 2.54, Аноним (54), 17:37, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    > Честно, выглядит как попытка уничтожить C++ изнутри

    так и есть

     

  • 1.43, Bottle (?), 17:12, 04/11/2026 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/–
    А я понимаю, почему нацкомы отклоняют запрос. Комитетчики уже подложили крупную свинью со своей спецификацией модулей, а тут поверх всего этого ещё фич навалили.
    Что это за стандарт такой на 2000 страниц с перекрёстными ссылками, который внедрить не может никто?
     
     
  • 2.52, Аноним (52), 17:34, 04/11/2026 [^] [^^] [^^^] [ответить]  
  • +/–
    Стандартизация подложила свинью еще в ANSI C, и это стало очевидно к середине нулевых, когда компиляторы стали собирать и оптимизировать код не как написано, а не пойми как.

    И проблема C и C++ не в том, что они небезопасны по памяти, а в том, что они небезопасны по стандартк и компилятору: по факту нельзя ожидать, что код соберется и будет работать как написано или хотя бы логично

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    XSQUARE
    Inferno Solutions
    Hosting by Hoster.ru
    Хоcтинг: