ネットで話題の「C++」新仕様にまさかのストップ 決定目前で、一体何が?:905th Lap
ゲームや業務用ソフトウェアなど幅広く使われるプログラミング言語「C++」。その新しい仕様を巡り、各国の専門家が合意したはずの規格案が最終投票でまさかの否決に。一体、何をもめていたのか?
業務用ソフトウェアや組み込みシステムなど、幅広い分野で使われているプログラミング言語「C++」。長年にわたって進化を続けてきたこの言語には、世界中の開発者が共通のルールでプログラムを書けるよう、国際的な標準規格がある。新しい機能を追加したり、仕様を見直したりするときは、各国の専門家が集まって議論を重ね、合意形成する。
ところが今回、その標準化プロセスで予想外の展開があった。2026年に予定されていたC++の新しい規格が、各国による最終投票でまさかの否決となった。委員会内では多数の賛成を得て、いよいよ正式発行かと思われていたはずなのに、なぜ最後の最後で待ったがかかったのか。どうやら、新機能を巡って専門家たちの間でも大モメしたらしい。
1991年6月の初会合以来、長年にわたって定期的に開催されてきたC++標準化委員会「WG21」。新たな規格の策定に当たっては、設計思想や技術的な優先順位を巡り、各国の委員の間で議論や対立が繰り広げられることも珍しくない。審議の過程で、いったん草案に盛り込まれた機能が削除されることもある。だが今回、各国投票に進んだC++26の国際規格案が否決されるという異例の事態となった。
この件について、WG21のメンバーであり、ドイツの投票にも関わるンドレアス・フェルティヒ氏が、2026年11月3日、自身のブログで「C++26 DIS failed, how does C++ survive?」と題する記事を公開した。DISは「Draft International Standard」の略で、正式な発行前の国際規格案を指す。
DIS投票では、各国の標準化機関が規格案全体に対して賛成、反対、棄権のいずれかを表明する。フェルティヒ氏によると、今回の投票では、承認要件の一つである「投票した審議参加国の3分の2以上の賛成」を満たせず、C++26の規格案は否決された。同氏が知る限り、WG21の歴史において、C++本体の国際規格案がDIS投票で否決されたのは初めてだという。
フェルティヒ氏によると、今回の主な争点となったのは、「Contracts」(契約)と呼ばれる新機能だ。これは、関数に渡す引数が正の数であることや、処理後の戻り値が一定の範囲に収まることなど、プログラムが満たすべき条件を明示する仕組みだ。
Contractsは、過去にも標準化が検討されたことがある。当時の案は2018年にC++20の作業草案に盛り込まれたものの、2019年に削除された。その後、専用の検討グループで数年にわたる議論が続けられ、改めてC++26の草案に採用されたという背景がある。
その後、2026年3月、WG21はContractsを含む草案を各国投票に進めることを、多数の賛成によって決定した。委員会に提出された資料「P4433R0」によると、Contractsには賛成意見が多く、委員会内の投票でも大きな支持を得ていた。それにもかかわらず、DIS投票では承認されなかった。
フェルティヒ氏は、各国の標準化機関から寄せられたコメントを踏まえ、Contractsの現行案を規格に盛り込むには時期尚早と判断した機関が複数あったことが、否決の背景にあると説明している。
フェルティヒ氏は、これまでの各国投票では、新たな情報が判明した場合や、手続き上の問題が見つかった場合などに反対票が投じられてきたと振り返る。今回も、Contractsの削除を求める立場から、設計上の懸念やこれまでの審議の過程を検証した資料が公開されている。だが、フェルティヒ氏は、そこで指摘されている問題の多くは既に議論されており、これまでの判断を見直すほどの新たな情報とは受け止めていない。
フェルティヒ氏は、今後の選択肢として、次の4つを挙げている。(1)「修正案を作成して再びDIS投票にかける」、(2)「委員会草案(CD)の段階に戻す」、(3)「技術仕様書(TS)として発行する」、(4)「標準化作業を中止する」の4つだ。ただし、いずれの道を選ぶにもWG21内で多数の支持を得る必要があり、次期規格の発行は遅れる可能性が高い。フェルティヒ氏は、次期C++標準、ひいてはC++の将来が、現在行き詰まった状況にあると懸念している。
WG21の次回会合は、11月16日~21日まで、ブラジルのブジオスで開催される予定だ。フェルティヒ氏は、今回の投票結果を受け、今後の標準化作業をどのように進めるかを決めることが、会合の優先課題になると見ている。
最後にフェルティヒ氏は、今回のDIS否決について、あくまで個人的な見解とした上で、「C++標準化コミュニティーにとって大惨事」と表現している。WG21内では、既に複数回の議論や投票を通じて多数派の合意が形成されていた。それにもかかわらず、最終段階の各国投票で規格案が否決されたことを、同氏は深刻に受け止めている。
フェルティヒ氏が問題視しているのは、単なる技術的な意見の違いではない。一度形成された合意が各国投票で覆されたことで、標準化プロセスそのものへの信頼が損なわれたことにある。
もちろん、C++が今後も幅広い分野で使われ続けることに変わりはないだろう。だが、次期規格がいつ、どのような内容で発行されるのかは不透明になった。今回の対立をWG21がどのように乗り越えるかが、今後のC++標準化の行方を左右することになりそうだ。
上司X: C++26の国際規格案が、各国の標準化機関による投票で否決された、という話だよ。
ブラックピット: 各国投票で非承認というのは異例なんですね。
上司X: これまでなら、国際規格案として投票に進むまでに議論は尽くされて、草案段階で反対意見を持っていた標準化委員たちも合意を尊重して賛成するというのが一般的だったようだ。
ブラックピット: 反対派が「合意を尊重する」っていうのはある意味で「妥協する」ってことですよね。
上司X: まあそうだけどさ(苦笑)。争点になったContractsについては数年かけて検討されてきて、C++26の草案に盛り込まれてそれが通ったわけだからなあ。妥協も必要じゃないのか?
ブラックピット: それでも承認できないナニゴトかがあったのでしょう。
上司X: Fertig氏は、意見の相違については問題視してない。ただいったん合意されたDISを覆してしまうことで、WG21における標準化プロセスの信頼性が失われてしまうのではないか、と危惧しているようだ。
ブラックピット: まあ、そうですよねえ。長い時間をかけて決まったことを最終的にひっくり返しちゃうんですものねえ。これからもC++の標準化を進めようとしたときに同じことが起こるのではないかと思われても仕方ないかもですね。
上司X: でもさ、決まったことは決まったことだ。それもまたルールだからな。次のWG21でどういう動きがあるのか、注目が集まるのは間違いないだろう。C++の明日が一体どうなるか、俺たちも見守ろうじゃないか。
ブラックピット(本名非公開)
年齢:36歳(独身)
所属:某企業SE(入社6年目)
昔レーサーに憧れ、夢見ていたが断念した経歴を持つ(中学生の時にゲームセンターのレーシングゲームで全国1位を取り、なんとなく自分ならイケる気がしてしまった)。愛車は黒のスカイライン。憧れはGTR。車とF1観戦が趣味。笑いはもっぱらシュールなネタが好き。
上司X(本名なぜか非公開)
年齢:46歳
所属:某企業システム部長(かなりのITベテラン)
中学生のときに秋葉原のBit-INN(ビットイン)で見たTK-80に魅せられITの世界に入る。以来ITひと筋。もともと車が趣味だったが、ブラックピットの影響で、つい最近F1にはまる。愛車はGTR(でも中古らしい)。人懐っこく、面倒見が良い性格。
Copyright © ITmedia, Inc. All Rights Reserved.
金曜Black★ピット
こんなメディアも見られています
キーマンズネットに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
SpecialPR
アクセスランキング
-
1
ネットで話題の「C++」新仕様にまさかのストップ 決定目前で、一体何が?:905th Lap
-
2
Outlookで深刻な脆弱性、ファイルを開くだけで情報漏えいの恐れか 悪用も確認
-
3
廃れた「Visual Basic」が残した負の遺産 「プログラム以外」の厄介な問題とは
-
4
ベンダーの言いなりで契約更新してない? ライセンスコストが膨らむからくり
-
5
Gemini Notebookで規定探しの手間をゼロにする、「問い合わせ効率化」超入門
-
6
デキるプログラマーほど「AI任せ」を嫌う、エージェント型開発のちょっと怖い話:904th Lap
-
7
「Microsoft 365」大規模障害、原因はサーバの正常性チェックか
-
8
Claude Enterpriseがセキュリティと管理機能を強化 DLP・EDR連携など新機能の全容は
-
9
AWSで「ChatGPT Enterprise」を購入可能に AWSアカウントで一括管理するメリットは
-
10
JR九州の非IT部門がGeminiでPythonアプリを内製開発 2~3カ月で完成させた方法
キーマンズネット SNS
インフォメーション
注目情報をチェック
キーマンズネットをフォロー