Skip to content

インライン変数の記事の改善#975

Merged
akinomyoga merged 6 commits into
masterfrom
inline-variables
Jun 5, 2022
Merged

インライン変数の記事の改善#975
akinomyoga merged 6 commits into
masterfrom
inline-variables

Conversation

@akinomyoga

@akinomyoga akinomyoga commented May 24, 2022

Copy link
Copy Markdown
Member

Resolve #972

#972 に関する修正の他にも色々気になることがあるのでまとめて PR にします。

対応項目一覧

未対応項目

この記事は元々 #404 にて導入されたものですが気になる点が幾つか。

  • [C++17][言語機能] インライン変数 #404 で言及された P0607R0 が言及されていない。(取り敢えず参考文献には追加した 2f35a59 が本文では触れていない)
  • "この機能が必要になった背景・経緯" がない。N4424 に書かれている。(取り敢えず N4424 を参考文献に追加済)
  • "検討されたほかの選択肢" がない。N4147 が相当。(取り敢えず N4147 を参考文献に追加済)

@hi-hori

hi-hori commented May 24, 2022

Copy link
Copy Markdown
Contributor

修正ありがとうございます。 #972 での私の疑問点は全て解消されておりました。

@akinomyoga

Copy link
Copy Markdown
Member Author

@hi-hori 確認ありがとうございます!

@faithandbrave faithandbrave left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ありがとうございます!

@yumetodo yumetodo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

7b583d7, e43aeaf のコミットメッセージですが、N4910はN4901のtypoでしょうか。

Comment thread lang/cpp17/inline_variables.md Outdated

@yumetodo yumetodo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

指摘は以上です。

@akinomyoga

akinomyoga commented May 24, 2022

Copy link
Copy Markdown
Member Author

7b583d7, e43aeaf のコミットメッセージですが、N4910はN4901のtypoでしょうか。

http://open-std.org/jtc1/sc22/wg21/docs/papers/2022/n4910.pdf を見てます (もっと正確に書くと cplusplus/draft から自分でビルドしたのを見てました)。N4901 と N4910 で番号が似ているのでややこしいですが...

@akinomyoga

Copy link
Copy Markdown
Member Author
  • 規格原案情報を更新しました 8d3fb19 (master に直接)
  • あと既存の規格番号に誤りを見つけたので修正。 N4871 → N4868 ceb41b4

inlineを指定する前に変数定義をして後出しで inline を指定するのは文法違
反ではなく意味論違反であり、不適格である [1]。

[1] N4910 [dcl.inline]/5
@akinomyoga

Copy link
Copy Markdown
Member Author

しばらく待って(追加)意見がなければマージしようと思います。よろしくお願いいたします。

Comment thread lang/cpp17/inline_variables.md Outdated
akinomyoga and others added 4 commits May 27, 2022 07:31
元の記述だと一つの翻訳単位(C++20では正確には定義ドメイン)でインライン
が指定されていれば全ての翻訳単位でインラインが暗黙に指定されるかのよう
に読めるが、規格 [1] を読む限りは同変数を宣言する全ての翻訳単位で
inline を明示的に指定する必要がある。

[1] N4910 [dcl.inline]/5

Co-authored-by: Kazutoshi SATODA <k_satoda@f2.dion.ne.jp>
@akinomyoga akinomyoga merged commit 6809d28 into master Jun 5, 2022
@akinomyoga akinomyoga deleted the inline-variables branch June 5, 2022 13:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

C++17 インライン変数についての疑問点

5 participants