`-Wunused-but-set-parameter` is only suppressed in Debug
メンテナーはふだん 2 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 1/5
- 見積もり時間
- 1時間未満
- 初心者へのやさしさ
- 90/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- cpp
- 領域
- build-system
調査の方向性
include/godot_cpp/core/binder_common.hpp を編集: #if defined(DEBUG_ENABLED) ガードを #pragma GCC diagnostic push の周りから削除し、無条件の pop に一致するようにする。godot-cpp を -Wunused-but-set-parameter と -Werror で Release でビルドし、コンパイルすることを確認する。Release で警告が抑制されたとき完了。
索引モデルが issue の本文から書いたものです。
説明
Godot version
4.7.2-stable
godot-cpp version
10.0.0-stable
System information
Windows 11
Issue description
The file in question:
include/godot_cpp/core/binder_common.hpp
The issue is that when godot-cpp is built in Release with GCC with -Wunused-but-set-parameter, this parameter is not suppressed and with -Werror it fails to compile. Also, it seems like an inconsistent check, because #pragma push checks DEBUG_ENABLED, but #pragma pop doesn't.
Suggested fix:
Remove #if defined(DEBUG_ENABLED), so the warning suppression applies in Release too.
// GCC raises "parameter 'p_args' set but not used" when P = {},
// it's not clever enough to treat other P values as making this branch valid.
#if defined(DEBUG_ENABLED) && defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-but-set-parameter"
#endif
...
#if defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic pop
#endif
Steps to reproduce
Build godot-cpp in Release with -Wunused-but-set-parameter
Minimal reproduction project
N/A
- 主要言語
- C++
- スター
- 2.7k
- フォーク
- 821
- 平均マージ
- 3日 18時間
- マージ済み PR(30日)
- 15
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
godotengine/godot-cpp のほかの issue
-
Building gdextensions with lto=full warns about serial compilaton対応中かも @marcozee03 が 51 日前に担当しました。 オープンenhancement topic:buildsystem
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
godotengine/godot-cpp#2002 ·
メンテナーはふだん 2 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
godotengine/godot-cpp#1969 · コメント 4 件 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
godotengine/godot-cpp#1967 ·
メンテナーはふだん 2 日以内に返信
-
enhancement topic:buildsystem tracker
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
godotengine/godot-cpp#2064 · リアクション 1 件 ·
メンテナーはふだん 2 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 50/100
godotengine/godot-cpp#2059 · コメント 4 件 ·
メンテナーはふだん 2 日以内に返信
godotengine/godot-cpp の issue をすべて見る
似ている issue
-
bug docs performance
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
メンテナーはふだん 3 日以内に返信
-
good first issue help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
-
good first issue neural P2
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
bug goto-symex
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
メンテナーはふだん 1 日以内に返信
-
tech-debt
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
prestonbrown/helixscreen#1885 ·
メンテナーはふだん 1 日以内に返信