GCCのAI生成コード方針、拒否の基準は15行でなく法的な重要性

GNUのコンパイラGCCは法的に重要なAI生成コードを拒否

GCC(GNU Compiler Collection)は、C/C++などのソースコードを実行できるプログラムへ変換するコンパイラ群です。GNUは自由に使うことができるソフトウェアを作る取り組みで、GCCはGNUプロジェクトの成果物のひとつです。そのGCCがAI生成コードの受け入れ条件を定める方針を公表しました。

David Edelsohn(デビッド・エデルソン)氏が、GCCのメーリングリストへアナウンスを投稿しました。GCC運営委員会(Steering Committee)が、GCC AIポリシー作業部会の推奨した方針を受け入れたと伝えています。作業部会を率いたのはJonathan Wakely(ジョナサン・ウェイクリー)氏で、メンバーは次のとおりです。

  • Carlos O'Donell氏
  • Sudakshina Das氏
  • Jason Merrill氏
  • Joel Sherrill氏
  • Sam James氏
  • Robin Dapp氏
  • Arthur Cohen氏

方針は、LLM生成物を含む貢献とLLM生成物に由来する貢献のうち、「法的に重要な(legally significant)」ものを拒否します。ただし拒否は「当面(For the time being)」の措置とされています。

法的に重要でない貢献は、LLMが生成したものでもメンテナが受け入れてかまいません。条件は2つで、通常の貢献に求められる前提条件を満たすことと、AI生成であると明記されていることです。

Wed Jul 29 02:11:43 GMT 2026 / The GCC Steering Committee has accepted the recommended policy of the GCC AI Policy Working Group. The policy is described in the following document preview / pull request in Forge, which will be committed to the GCC website: / We expect the policy to continue to evolve and will revisit it periodically. We wish to thank Jonathan Wakely for his leadership of the working group and the members of the working group: Carlos O'Donell, Sudakshina Das, Jason Merrill, Joel Sherrill, Sam James, Robin Dapp, and Arthur Cohen. — 投稿日時と、運営委員会による承認、作業部会の構成に関する告知より
公式情報を見る →
For the time being, the GNU Compiler Collection (GCC) policy is to decline any legally significant contributions which include LLM-generated content or are derived from LLM-generated content. The GCC maintainers are free to accept legally insignificant contributions generated by an LLM as long as they meet the usual prerequisites for any contribution and the contribution is clearly marked. — 拒否の対象となる貢献と、受け入れが認められる条件に関する記述より
公式情報を見る →

15行は方針の本文になく、GNUの著作権規定にある数字

国内の報道には、GCCの開発チームが15行を超えるAI生成コードを拒否する方針を公開したとタイトルで伝えたものがあります。このタイトルを見ると、方針に行数の基準があるように思えます。しかし方針の文書に行数の記載はなく、基準として使われている語は「法的に重要」です。

15行という数字は、GNUプロジェクトがメンテナ向けに定めた規定「Legally Significant Changes(法的に重要な変更)」に出てきます。著作権上法的に重要なコードや文章をおよそ15行を超えて提供する場合は、その貢献について著作権の書類(copyright papers)が必要になります。

規定は、数行だけの変更(15行未満くらい)を著作権上は法的に重要でないとしています。シンボル名の付け替えのように同じ作業を繰り返す変更も、置き換える箇所が多くても法的に重要ではありません。

GCCの方針とこの規定は別の文書ですが、どちらにも「法的に重要(legally significant)」という同じ語が出てきます。財経新聞とIt's FOSSは、方針の「法的に重要」という語にGNUのメンテナ向け文書へのリンクを張って伝えています。

If a person contributes more than around 15 lines of code and/or text that is legally significant for copyright purposes, we need copyright papers for that contribution, as described above. A change of just a few lines (less than 15 or so) is not legally significant for copyright. A regular series of repeated changes, such as renaming a symbol, is not legally significant even if the symbol has to be renamed in many places. — 15行という敷居の定義と、規則的な繰り返し変更の扱いに関する記述より
公式情報を見る →

15行未満のAIコミットも、同じ人が積み重ねると法的に重要になりうる

GNUの規定は、同じ人物による小さな変更も積み重なれば、重要な貢献になりうると述べています。問われるのは、その人の貢献の総量です。どの部分がいつ提供されたかは関係ありません。積み重ねの考え方はGNUの著作権規定にあり、GCCの方針では言及されていません。

…Keep in mind, however, that a series of minor changes by the same person can add up to a significant contribution. What counts is the total contribution of the person; it is irrelevant which parts of it were contributed when. — 同一人物による小さな変更が合計で重要な貢献になりうるという記述より
公式情報を見る →

GCCはテストケースなら法的に重要な生成AIの出力でも受け入れる

例外はテストケースで、プログラムが正しく動作するかを調べるために書くコードを指します。つまり、テストケースへの貢献は全体または一部をLLMが生成していて法的に重要であっても、メンテナが受け入れてかまいません。

方針が適用されないコードもあります。GCCプロジェクトにもともと属さず、便宜上や前提条件を満たすために他のプロジェクトから取り込んだコードです。たとえばlibsanitizerは方針の対象になりません。

As an exception, the GCC maintainers are free to accept legally significant contributions to test cases, generated in whole or in part by an LLM. / This policy does not apply to code which does not primarily belong to the GCC project, but is imported from other projects for convenience or to satisfy prerequisites (e.g. libsanitizer). — テストケースの例外と、適用外となるコードに関する記述より
公式情報を見る →

コミットメッセージにAssisted-byが必須、DCOの署名は人間だけ

LLMが生成した内容を含む貢献は、コミットメッセージ(変更の内容を書き残すコミットの説明文)にAssisted-by:タグを入れなければなりません。貢献は、変更内容を理解して問いに答えられる人間が提出しなければなりません。

プロジェクトに取り込むかを判断するのも、人間でなければなりません。LLMがプロジェクトのリポジトリ(ソースコードの保管場所)へコードをコミットすることも、認められていません。

Signed-off-by:タグは、開発者原本証明(Developer Certificate of Origin、DCO)に従っていることを表明するために記載します。DCOは名称のとおり、貢献の出どころに関する宣言文です。このタグを記載できるのは人間だけです。

The commit message for any contribution of LLM-generated content must include an “Assisted-by:” tag. / All contributions must be submitted by a human who understands the changes and is prepared to answer questions about them. The decision to include the contribution in the project must also be made by a human. Only a human may provide the “Signed-off-by:” tag certifying the Developer Certificate of Origin (DCO). An LLM may not commit code to the project repository. — コミットタグの要件と、人間が担う責任範囲に関する記述より
公式情報を見る →

GCC開発でAIを下調べやデバッグに使うのは方針の対象外

方針の対象外になる使い方の1つめは、ローカル環境のコンピューターで作業できるようにするための個人的な利用です。貢献者本人が出力を確認することが前提で、たとえば次の4つが対象外です。

  • 画面読み上げ
  • 音声合成(文章を音声にする技術)
  • 翻訳
  • 綴りや文法の支援

2つめは、AIを開発作業の下調べや点検に使う場合です。次の用途が対象外で、出力がプロジェクトへの貢献物に含まれないことが条件になります。

  • 下調べと分析
  • バグの発見と報告
  • パッチのレビュー
  • デバッグ

バグ報告では、出力を十分に検討せずにそのまま送信するべきではありません。パッチレビューは人のレビューを支援するもので、置き換えるものではありません。出力が貢献物に含まれる場合は、方針が適用されます。

This policy does not apply to a contributor's other uses of AI including the use of these tools to enable them to work with their own computing devices e.g. screen readers, text-to-speech, direct translations, spelling or grammar assistance, where the contributor verifies the output of the tool. / This policy does not apply to a contributor's use of AI for the purposes of research, analysis, bug discovery and reporting (output should not be sent verbatim without due consideration), patch review (supporting human review, not replacing it) and debugging, so long as the output is not included in the contributions to the project. If the output is included in the contributions to the project then this policy would apply. — 個人的な利用と、調査・レビュー支援・デバッグが適用外となる範囲に関する記述より
公式情報を見る →

オープンソースのGCCは生成AIの方針を遅くとも2027年初頭に見直す

方針は、コミュニティやGNUプロジェクト全体の立場が変わるのに合わせて更新される見込みで、遅くとも2027年の初めに見直されます。運営委員会もアナウンスで、定期的に見直すと述べました。文書は、CC0 1.0 Universal(著作権上の権利を手放して公開する際の表示)で公開されています。

方針は冒頭の「Community First」の項で、LLMについての考え方は人によって大きく異なり、誰もが誠実に貢献しているとみなすべきだとしています。方針にまだ従えていない貢献者も歓迎し、従い方を説明するとのこと。

This policy is expected to evolve with the community or as the overall GNU Project position is updated. At the latest the policy will be reviewed at the start of 2027. / …There are strongly held and widely varying opinions regarding large language models (LLMs) and everyone should be presumed to be contributing in good faith. We welcome all contributors to the community even if they have not yet followed our policies; we should guide such contributors on how to do so. — 見直しの時期と、コミュニティへの姿勢に関する記述より
公式情報を見る →

拒否の基準は法的な重要性で、15行はGNU規定の目安

GCCのAI生成コード方針は、LLM生成物を含む貢献やLLM生成物に由来する貢献のうち、法的に重要なものを拒否します。15行は方針の文書ではなく、GNUのメンテナ向け規定にある目安です。出力が貢献物に含まれない下調べやデバッグへの利用は、方針の対象になりません。

AIが生成した貢献のうち法的に重要でないものは、前提条件を満たしAI生成と明記すれば受け入れられます。テストケースは例外で、法的に重要でも受け入れてかまいません。AIを使った貢献では、コミットメッセージにAssisted-byタグが必要です。

FAQ

GCCは15行以上のAI生成コードを拒否するのですか?
方針の文書に「15行」という記述はありません。GCCが拒否するのは、LLM生成物を含む貢献とLLM生成物に由来する貢献のうち「法的に重要な(legally significant)」ものです。15行はGNUのメンテナ向け規定にある目安で、報道にはこの数字で要約したものがあります。
15行という数字はどこから来ているのですか?
GNUプロジェクトのメンテナ向け規定です。著作権上法的に重要なコードや文章をおよそ15行を超えて提供する場合は、その貢献について著作権の書類が必要になると定めています。同じ規定は、数行だけの変更(15行未満くらい)を著作権上は法的に重要でないとしています。
小さいAI生成コードなら自由に出していいのですか?
条件があります。法的に重要でない貢献ならメンテナは受け入れてかまいませんが、通常の貢献に求められる前提条件を満たすことと、AI生成であると明記されていることの両方が必要です。コミットメッセージには「Assisted-by:」タグも入れなければなりません。
下調べやデバッグにAIを使うのも禁止ですか?
禁止ではありません。AIの出力がプロジェクトへの貢献物に含まれない限り、下調べやデバッグなどに使っても方針の対象外です。対象外の用途には、バグの発見・報告とパッチのレビューも含まれます。パッチレビューは人のレビューを支援するもので、置き換えるものではないとしています。