問題タブ [gcc9]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gcc - GCC 9.2 のコンパイル エラー: libgotool.a: そのようなファイルはありません
VM への Fedora 30 の新規インストール時 (以下の yum は gcc 9.1 を取得し、それを使用して gcc 9.2 を構築しようとしています):
与えます:
それでも libgotool.a は /home/mmalak/gcc-9.2.0/x86_64-pc-linux-gnu/libgo/libgotool.a に存在します
c++ - if constexpr で引数 pack を含む概念を使用すると、gcc 9 にアップグレードした後にコンパイル エラーが発生する
if constexpr
コンテキストで引数 pack を使用した概念を使用するコードがあります。以前は gcc 8 でコンパイルして動作していましたが、gcc 9 で壊れます。
GCC 9.2 によって生成されるエラーは次のとおりです。
コンパイラ エクスプローラはこちらを参照してください。gcc バージョン 8.3 と 9.2 を切り替えて違いを確認できます。
c - address-of-packed-member: 特定の機能を無効にしますか?
パックされた構造体のメンバーにアクセスするたびに、このエラーが発生することに気付きました
- ミスアライメントを処理する関数に対して特に無効にするにはどうすればよいですか? (safe_unaligned_val_16/32/64 - memcpy のようにバイトごとに手動で出力を構築します)
- 関数に構造体ポインタを渡すと、GCC は何らかの最適化を行いますか? 4バイトのプリミティブ型を持つ構造体がある場合など、いくつかの最適化に気づきました。関数がプリミティブの値を変更しない場合、その値を単一の32ビットレジスタに渡すだけです。これ ^
ありがとう、グレッグ
gcc - Windows で MSYS2 を使用して GCC 9.2.0 をインストールする
MSYS2 をインストールし、すべてのパッケージを更新し、gcc ツールチェーンを使用してインストールした後pacman -Sy mingw-w64-x86_64-toolchain
上の図に示すように、9.2.0 バージョンがあります。しかし、実行gcc.exe --version
すると8.1.0と表示されます
何が原因で、どうすれば 9.2.0 に更新できますか? 私がこれを行っている理由はhttps://sourceforge.net/p/mingw-w64/bugs/737/です。