-
Notifications
You must be signed in to change notification settings - Fork 163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ヘッダのプロトタイプ宣言で変数名が省略されて型名しかないものに明示的に変数名を指定する #224
Comments
他の PR とかぶると嫌なので調査だけしておく。 |
何らかのツール、コンパイラ等で検出できたらいいのだけど |
こんな情報があった。根拠には疑問を感じるが。 |
根拠に挙げられた障害への対策は、できるだけマクロを使わないとか汎用的に使われる名詞にマクロを割り当てないとかになるような気がしました。公的推奨も結構いい加減ですねぇw ちなみにこの件、intellisenseの拡張apiを使えばなんとかなるような気がしています。ツールを作るかどうかは優先度によるのかな、と思っています。 |
保留中 #326 を解決するために、関数宣言に引数を付ける対応が必要かも知れません。 いまのところ、対応方法は ~~~二択~~~ 三択だと思っています。
※8/26 No3を追加しました。 追記箇所の数が多いので「ツール化」で進めたい感じです。 ツール化する場合のアプローチは3つだと思っています。
どの方式をとったとしても一度作ってしまえば、 普通に考えるとVSIXは修羅道です。 |
no 2 のメリットとデメリットが逆のような気がします |
案4 clang-tidy とかのツールでできるのならそれで、 ↑ 実現可能かは全く調べてません http://clang.llvm.org/extra/clang-tidy/ |
↑ 誤植修正 |
修正してみました。 案3は「既存ツールでできる」ということ? |
できるかはわからないです。 |
了解です。表を更新してみました。 |
プロトタイプ宣言を自動生成するツールとして cproto というものがあり、Vimでも使っているのですが、さほど使いやすくもない (特にWindows) のが残念なところです。 |
libclang というライブラリで clang のコンパイラ機能を使えるみたいだ。 python binding や c# 向けのライブラリがあって、プログラムから呼び出せる模様。 |
libclang を使うには clang でビルドできるようにはしとく必要があるとは思う。 |
llvm(=clang)のツールを見て見た感想・・・ VSIXでVC++のエラー一覧にタスクを突っ込むのと考え方が同じっぽい。 llvm で windows アプリ を作れるものなのかどうかは、よく知らないです。 |
完璧ではないですが、検出ツールを作成中です。 https://github.com/m-tmatma/GrepFuncProtoType GrepFuncProtoType.sln をビルドして、 以下を実行したら該当箇所を絶対パスと行番号付きで出力します。
visual studio の外部ツールに コマンド → を指定して、登録した外部ツールを実行すれば、visual studio の出力ウィンドウに検索結果を表示します。 |
↑ 現状では |
一年以上も前の話だったのか!と気付くなど:sob:
サクラエディタのコードってそんなんばっかな気がしないでもないですが 😢 |
ヘッダのプロトタイプ宣言で変数名が省略されて型名しかないものに明示的に変数名を指定する
例えば以下部分
sakura/sakura_core/cmd/CViewCommander.h
Line 121 in a1f053c
cpp では以下のように定義されている。
sakura/sakura_core/cmd/CViewCommander_File.cpp
Lines 596 to 603 in a1f053c
The text was updated successfully, but these errors were encountered: