並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 48件

新着順 人気順

GCCの検索結果1 - 40 件 / 48件

GCCに関するエントリは48件あります。 プログラミングprogramminglinux などが関連タグです。 人気エントリには 『コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み | ログミーBusiness』などがあります。
  • コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み | ログミーBusiness

    Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。植山氏は、制作中のリンカである「mold」について発表しました。全2回。前半は、リンカの概要について話しました。 LLVMのリンカ「lld」オリジナルの作者植山類氏:植山類です。今僕が作っているmoldというリンカについて発表します。 今回の発表の概要です。リンカが何かを知っている人はそんなにたくさんいないと思うので、まず説明します。次に、「mold」のポイントは速いことなのですが、速いと何がうれしいのかを説明します。そのあと、どれくらい速いのかを説明した上で、どう実現されているのか、概要を紹介します。詳細になると何時間あっても終わらないので、かなりハイレベルな話をします。 自己紹介のスライドを入れていませんが、僕はリンカを何度か作ったことがあって、LLVMのlldの

      コンパイラが作ったバイナリをつなぎ合わせるプログラム 「lld」の作者が語る、リンカの仕組み | ログミーBusiness
    • 「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita

      TL;DR Shift_JISにしただけでコンパイラが通らなくなる恐ろしい事件とその回避法について。 \ (¥)のASCIIコードは0x5c 表、能は良くない UTF-8は神 2023/12/06追記 誤りがあったので訂正します。こんな読まれると思ってなかったので正直ちょっとびっくりしていますが、いろいろコメントありがとうございました。(ツイート等全て拝見しました。) Shift_JISが悪いわけではない(デフォルトのエンコーディング設定の問題)→追記しました UTF-8にはUTF-FSSという仕様でこの問題が回避されている→マジでタメになる知識ありがとうございます OSによってデフォルトのエンコーディング設定が異なるせいで、デフォルト環境での動作がOSにより異なる→なるほど?(調査中) CRLFとLF問題では→なるほど?(調査中) そんな問題何を今更→UTF-8が出てから生まれたからです

        「//このコメントを消したら動かない」は大体Shift_JISの2バイト目が原因で発生する - Qiita
      • C言語をマスターしたい人はGCCのバージョン14を使いましょう - pyopyopyo - Linuxとかプログラミングの覚え書き -

        C言語(C++を含む)を習得したい人,ポインタを勉強したい人はgcc-14を使いましょう.難しいところは gcc-14 が丁寧に解説してくれます C言語の難しいところ 例を示します.C言語で記述された,たった6行のソースコードです int main() { int buf[10]; buf[10] = 0; return 0; } このソースコードには問題があります.初見でわかるでしょうか? : : : 問題があるのは buf[10]=0 の部分です.C言語でやりがちなミスですが,これがバグやセキュリティホールの原因になります. C言語が難しい理由は二つあります.この手の問題を見逃しやすい点と,この手の問題を理解することが難しい点の二つです gcc 14 に解説してもらいましょう 上記の6行のソースコードをgcc14を使ってコンパイルしてみます ソースコードのファイル名は test.c と

          C言語をマスターしたい人はGCCのバージョン14を使いましょう - pyopyopyo - Linuxとかプログラミングの覚え書き -
        • Claude16台で10万行のCコンパイラを作った論文を読んで、「いや答えあるじゃん」と思った話

          Anthropicのエンジニアリングブログに、とんでもない記事が出た。 Claude 16台を並列で2週間回して、10万行のRust製Cコンパイラを作った。 費用$20,000。Linux 6.9のブートに成功。GCCのテストスイートで99%パス。DoomもFFmpegもPostgreSQLもコンパイルできる。 すげえ。 で、オレはAI部下10人を戦国軍団として運用してる側の人間なんだけど、この記事を読んで最初に思ったのは「すげえ」の次に来た、こっちの感想だった。 「いや、答えあるじゃん。」 何がすごいのか(素直に) まず、ちゃんとすごいところを認めたい。 16台のClaudeが 自律ループ で動く。タスクが終わったら勝手に次を拾う 同期は Gitのファイルロック だけ。インフラなし テストが仕様書を兼ねている。「テストをPASSさせろ」で人間の介入なし 2,000セッション、2週間。人間

            Claude16台で10万行のCコンパイラを作った論文を読んで、「いや答えあるじゃん」と思った話
          • Pythonコードを35000倍に高速化したい

            はじめに Pythonは世界的にも人気のあるプログラミング言語ですが、実行速度については課題があります。Pythonの実行速度を高速化したい、という要求は根強く、これまでにも様々な処理系が開発されています。 この記事はPythonで書かれたコードを35000倍に高速化するにはどのような方法があるかについてまとめたものです。 この記事は: Pythonで書かれたアルゴリズムを35000倍に高速化する 事前コンパイル、並列化、SIMD演算を駆使する 最終的に44000倍まで高速化できた なぜ35000倍? 2023年5月2日にModular社よりPythonの使いやすさとC言語の性能を兼ね備える新しいプログラミング言語、Mojoの開発について発表がありました。低レベルのハードウェア向けにコンパイル可能なこと、文法的にはPythonを踏襲しており、既存のPythonライブラリを利用可能であること

              Pythonコードを35000倍に高速化したい
            • malloc.c を読む (malloc / free)

              このシリーズではこれらの関数が内部でどのように処理されるのかを調べていきます。 malloc.c を読む (malloc / free) malloc.c を読む (bins) malloc.c を読む (arena) 今回は malloc() free() の全体像を紹介します。 注意としてここでの目的は全体を俯瞰して、詳細を詰めずとも各 bins の役割を理解し、攻撃手法を理解できるようにすることです。それに合わないマルチスレッドや最適化などにおける緻密なトリックやコーナーケースなどは暗黙的に実装されていると仮定します。その詳細についてはソースコードや他の資料を参考にしていただきたいです。 ここで扱う glibc のバージョンは v2.38 です。また glibc のソースコードはブラウザ上で読むことができます。 https://elixir.bootlin.com/glibc/lat

                malloc.c を読む (malloc / free)
              • 「バグを意図的にバグのまま残す」という選択肢がある

                はじめに gcc v12.1において、C++の正規表現ライブラリstd::regexに、正規表現のバリデーションを改善するパッチ(以下"改善パッチ"と表記)が取り込まれました。改善パッチによって、これまではバリデーションにひっかからなかった不正な正規表現文字列が"正しく"不正なものと認識されて例外が発生するようになりました。 これだけ聞けばいいことだけのように思えるかもしれませんが、実はそうでもなかったりします。経験豊富なかたであれば見た瞬間ゾッとしたかもしれません。本記事では、この一見問題なさそうな改善パッチによって発生しうる問題、および、その具体的例について紹介するとともに、この手のパッチを当てるかどうかは難しい判断になるという知見を共有します。 結論 改善パッチによって発生する問題 発生条件 gcc v12.1以降、あるいは改善パッチをバックポートされた任意のバージョンを使ってC++

                  「バグを意図的にバグのまま残す」という選択肢がある
                • A Modern C Development Environment

                  Sometimes, C/C++ projects have a long development cycle. When working on such a project, it can be easy to take our development environment for granted, and forget about the effort invested in its bring-up. The build environment works like magic, the test framework is neatly integrated, and the CI/CD pipeline relieves us of tedious, repetitive tasks. For me, all it took was a simple thought: How d

                    A Modern C Development Environment
                  • WSL以前から40年以上続く、Windows(Microsoft)とUNIXとの関わり

                    80年代、Microsoft製のUNIXが存在していた POSIXサブシステムは2012年までサポートが続いた 現在のWindows 11では、Windows Subsystem for Linux(WSL)が動作するため、(それ自体はUNIXではないものの)UNIXからのアプリケーションを簡単に動作させることができる。 かつてMicrosoftは、x86版UNIXのライセンスを持っており、XENIXと呼ばれる製品を販売していた。また、Windows NTに「POSIXサブシステム」、のちに「Windows Service for UNIX(SFU)」と呼ばれる機能があった。そういうわけで、WindowsとUNIXは切れない“縁”があったのだ。 Windows NTのPOSIXサブシステムやその搭載理由などに関しては、過去記事(「Windows Subsystem for Linuxの中身

                      WSL以前から40年以上続く、Windows(Microsoft)とUNIXとの関わり
                    • 最近のC言語と、次期C標準(C23)

                      C言語といえば古い言語なイメージですが、その重要性はまだまだ落ちていません(多分)。重要な言語だからこそ、今もひっそりと進化を続けています。この記事では、そんなC言語の最近の動向を紹介します。 まずはC言語の前世紀の標準であるC99、現行の標準であるC11/C17を振り返り、その後に未来の標準であるC23に触れます。 C99 C99では色々追加されました。ここでは一部のみの紹介とします。 _Bool _Complex C++の std::complex とメモリ上での互換性がある(C++11以降)。 可変長配列(VLA) 可変長引数マクロ 浮動小数点数の強化 十六進表記 筆者による関連記事:浮動小数点数の16進表記 fma 筆者による関連記事:FMA (fused multiply-add) の話 #pragma STDC FENV_ACCESS, #pragma STDC CX_LIMI

                        最近のC言語と、次期C標準(C23)
                      • C++ コンパイル時「出力」 ~C++にできないことはない~ - Qiita

                        これは、 C++ でコンパイル時に出力まで済ませようとした話です。 コンパイラは GCC に限ります。 はじめに もうすぐクリスマスですね! クリスマスにすることといえば……、 そう、コンパイル時処理ですね!! コンパイル時処理 C++ のコンパイル時処理は非常に強力で、様々なことがコンパイル時にできてしまいます。 普通はコンパイル時に決まる定数の計算に使われますが、これを悪用利用してコンパイル時に処理がすべて終わるようなものも書くことができます。 例として、コンパイル時 FizzBuzz を書いてみます。 #include <array> #include <string_view> #include <algorithm> #include <concepts> #include <iostream> template <std::unsigned_integral T> conste

                          C++ コンパイル時「出力」 ~C++にできないことはない~ - Qiita
                        • トーバルズ氏、Linuxカーネルを「C89」から「C11」コードに移行する準備

                          LinuxカーネルがCで記述されているというのは誰もが知るところだ。ただ、そのCがかなり昔のC、すなわち1989年の規格である「C89」だという事実については知らない人もいるかもしれない。C89は「ANSI X3.159-1989」、あるいは「ANSI C」としても知られている。Linus Torvalds氏は、そろそろC89に別れを告げる時だと判断し、Linuxカーネルの公式な開発言語を2011年規格の「C11」に移行しようとしている。 これは見かけほど大きな変更ではない。C89は現在でもほぼ普遍的にサポートされている。どのようなCコンパイラーでも以前の規格との後方互換性を備えているため、C89で記述されたプログラムのコンパイルや実行は問題にならない。つまり、C11準拠のコンパイラーでも、C89で記述されたレガシーなコードによって問題が引き起こされることはないはずだ。 Torvalds氏

                            トーバルズ氏、Linuxカーネルを「C89」から「C11」コードに移行する準備
                          • bpftraceを使ってバイナリの謎の性能劣化を突き止めろ - Cybozu Inside Out | サイボウズエンジニアのブログ

                            サイボウズ社内ではC++で開発している製品があります。 未知のバッファオーバーランなどの脆弱性への対策として、重要なコンポーネントについてはプロダクション環境で利用しているバイナリでも AddressSanitizer を有効にしてビルドしています。 その製品で利用しているコンパイラをgcc5.3.0からgcc7.5.0に更新したところ性能劣化が発生しました。 製品コードとは別の部分が原因のため、根本原因の追跡が難しそうです。perf,bpftraceを使って性能劣化を追いかけてみましょう。 本記事で利用しているAddressSanitizer, bpftrace, perfコマンドはネット上に良質な記事がありますので、使い方などの解説は今回は省略させていただきます。 gcc7.5.0において、性能劣化が発生する再現コードとして次のようなものを用意しました。 #include <strin

                              bpftraceを使ってバイナリの謎の性能劣化を突き止めろ - Cybozu Inside Out | サイボウズエンジニアのブログ
                            • 次期C標準 (C23) の内容が固まったらしい

                              C23については最近のC言語と、次期C標準(C23)でも軽く紹介しました。 今回、C23入りする内容が大体固まったようなので改めて紹介します。 この記事を書いている時点での最新の公開されたWorking Draftは N2912 N3047 N3054 N3096です。ただし、C2y向けの最初のドラフトN3220もあり、そちらの方が実際の内容に近いかもしれません。 内容については会議参加者の投稿も参考にしています: https://twitter.com/rcs/status/1550526425211584512 C23 now finalized! : C_Programming というわけで、C23に入る主な機能はこちらです: C23に入る主な機能 POSIXの機能の取り込み: strdup, strndup, memccpy, gmtime_r, localtime_r C++の機

                                次期C標準 (C23) の内容が固まったらしい
                              • C言語のbitfieldの仕様と実装を調査した話 - /home/tnishinaga/TechMEMO

                                C言語にはbitfieldという機能がありますが、この機能にはさまざまな落とし穴があり、注意深く利用しても予期せぬバグや移植性の問題を引き起こす可能性があるとよく言われています。 実際、jpcertを確認すると複数の勧告が出ています。 EXP11-C. ビットフィールド構造体のレイアウトについて勝手な想定をしない INT12-C. 式中で使用される単なるintのビットフィールドの型について勝手な想定をしない CON32-C. 複数スレッドによる隣接データへのアクセスが必要な場合データ競合を防止する DCL39-C. 信頼境界を越えて構造体を渡すとき情報漏えいしない 私は先輩技術者から「とくに組み込みの分野においてC言語のbitfieldは使うべきではない」と教わって生きてきました。 本記事ではbitfieldの仕様や問題点、なぜ仕様を避けるべきか、緩和策や代替案について検討します。 目次

                                  C言語のbitfieldの仕様と実装を調査した話 - /home/tnishinaga/TechMEMO
                                • 2021年6月2日 もうFSFにとらわれない ―GCC運営、FSFへの著作権移譲を開発者に求めないポリシーに | gihyo.jp

                                  Linux Daily Topics 2021年6月2日もうFSFにとらわれない ―GCC運営、FSFへの著作権移譲を開発者に求めないポリシーに GCCプロジェクトを運営するGCC Steering Committeeは6月1日、GCC 9のポイントリリース「GCC 9.4」の公開に合わせ、GCCの著作権譲渡ポリシーの変更を発表、今後はFree Software Foundation(FSF)への著作権譲渡をコントリビュータに依頼しない方針を明らかにした。GCCをはじめとするGNUプロジェクトへのコントリビュータはこれまで自身が開発したプログラムの著作権をFSFに移譲するよう求められてきたが、GCCに関してはその縛りがなくなることになる。 Update to GCC copyright assignment policy GCC Steering CommitteeメンバーであるDavid

                                    2021年6月2日 もうFSFにとらわれない ―GCC運営、FSFへの著作権移譲を開発者に求めないポリシーに | gihyo.jp
                                  • gccの最適化指示-Ofastは危険 - Qiita

                                    はじめに gccの最適化指示である-Ofastをお気軽に使ってる記事を見掛けたので注意喚起的なやつです。 -Ofastとは何ぞや gccのドキュメントから引用 https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html#index-Ofast -Ofast Disregard strict standards compliance. -Ofast enables all -O3 optimizations. It also enables optimizations that are not valid for all standard-compliant programs. It turns on -ffast-math, -fallow-store-data-races and the Fortran-specific -fstac

                                      gccの最適化指示-Ofastは危険 - Qiita
                                    • GCC for New Contributors — GCC Contributors Guide 0.1 documentation

                                      GCC for New Contributors¶ This is an unofficial guide to GCC’s internals, aimed at new developers, and at plugin authors. Source: https://github.com/davidmalcolm/gcc-newbies-guide I’m a relative newcomer to GCC, so I thought it was worth documenting some of the hurdles I ran into when I started working on GCC, to try to make it easier for others to start hacking on GCC. Hence this guide. Other sou

                                      • Progress toward a GCC-based Rust compiler

                                        December 15, 2023 This article was contributed by Ronja Koistinen The gccrs project is an ambitious effort started in 2014 to implement a Rust compiler within The GNU Compiler Collection (GCC). Even though the task is far from complete, progress has been made since LWN's previous coverage, according to reports from the project. Meanwhile, another hybrid and more mature approach to GCC Rust code ge

                                        • GCC undefined behaviors are getting wild

                                          Happy with my recent breakthrough in understanding C integer divisions after weeks of struggle, I was minding my own business having fun writing integer arithmetic code. Life was good, when suddenly… zsh: segmentation fault (core dumped). That code wasn't messing with memory much so it was more likely to be a side effect of an arithmetic overflow or something. Using -fsanitize=undefined quickly id

                                          • GCC 12.1 Compiler Released With AVX-512 FP16, Better RISC-V Support, More C++23 Features - Phoronix

                                            GCC 12.1 Compiler Released With AVX-512 FP16, Better RISC-V Support, More C++23 Features Written by Michael Larabel in GNU on 6 May 2022 at 06:35 AM EDT. 6 Comments GCC 12.1 is out today as the first stable release of GCC 12. It also marks 35 years already since the release of GCC 1.0. With a year's worth of changes, GCC 12.1 is a big feature release with a lot of good stuff in it from new C/C++ f

                                              GCC 12.1 Compiler Released With AVX-512 FP16, Better RISC-V Support, More C++23 Features - Phoronix
                                            • AMDが未発表のZen 5アーキテクチャ向けコンパイル機能をGCCに追加

                                              オープンソースのコンパイラ「GCC」にAMDが開発中のCPUアーキテクチャ「Zen 5」に関連すると思われるパッチが導入されました。 AMD Zen 5 "Znver5" CPU Enablement Merged For GCC 14 - Phoronix https://www.phoronix.com/news/AMD-Zen-5-Znver5-Merged-GCC14 AMD adds support for Zen 5 to Linux GCC compiler | Tom's Hardware https://www.tomshardware.com/pc-components/cpus/amd-adds-support-for-zen-5-to-linux-gcc-compiler AMDは、2024年2月に「znver5」と呼ばれるプロセッサを対象にしたパッチを提出していま

                                                AMDが未発表のZen 5アーキテクチャ向けコンパイル機能をGCCに追加
                                              • リンカのお仕事

                                                #include <cstdio> void func(); int main() { func(); } funcという関数のプロトタイプ宣言があり、それをmain関数内で呼び出していますが、実体が定義されていません。これをコンパイルしようとすると、例えばこんなエラーがでます。 $ g++ test.cpp /usr/bin/ld: /tmp/ccFEAPJn.o: in function `main': test.cpp:(.text+0x9): undefined reference to `func()' collect2: error: ld returned 1 exit status エラーメッセージは「funcなんて知らないよ」というものですが、エラーを出しているのは/usr/bin/ldというプログラムです。これは、リンカ(linker)と呼ばれるソフトウェアです。 リン

                                                  リンカのお仕事
                                                • Improvements to static analysis in the GCC 14 compiler | Red Hat Developer

                                                  I work at Red Hat on GCC, the GNU Compiler Collection. For the last five releases of GCC, I've been working on -fanalyzer, a static analysis pass that tries to identify various problems at compile-time, rather than at runtime. It performs "symbolic execution" of C source code—effectively simulating the behavior of the code along the various possible paths of execution through it. This article summ

                                                    Improvements to static analysis in the GCC 14 compiler | Red Hat Developer
                                                  • Building the Rust compiler with GCC

                                                    Bootstrapping Rust with GCC If you know one thing about me, it is that I love working on the Rust compiler. Some people kayak, travel or play guitar - and I stare at assembly, trying to figure out what I broke. This summer, I am taking on quite a large task: bootstrapping the Rust compiler using `cg_gcc` What does that mean? "bootstrapping" is simply a name given to the Rust compiler build process

                                                    • CCC vs GCC

                                                      CCC vs GCC Posted on February 8, 2026 • 15 minutes • 3024 words Introduction Anthropic recently published a blog post about building a C compiler entirely with Claude . They called it CCC (Claude’s C Compiler) and claimed it could compile the Linux kernel. 100% of the code was written by Claude Opus 4.6, a human only guided the process by writing test cases. That sounded interesting enough to test

                                                      • GCC 12 Adds Support For Using The Mold Linker - Phoronix

                                                        GCC 12 Adds Support For Using The Mold Linker Written by Michael Larabel in GNU on 29 December 2021 at 02:47 PM EST. 26 Comments A small but noteworthy change that landed today for the GCC 12 compiler itself is support for using the Mold linker. Released last week was Mold 1.0 as a high-speed linker that can deliver better performance than GNU's old Gold linker and even LLVM's LLD. Mold was design

                                                          GCC 12 Adds Support For Using The Mold Linker - Phoronix
                                                        • Bubble sort slower with -O3 than -O2 with GCC

                                                          I made a bubble sort implementation in C, and was testing its performance when I noticed that the -O3 flag made it run even slower than no flags at all! Meanwhile -O2 was making it run a lot faster as expected. Without optimisations: time ./sort 30000 ./sort 30000 1.82s user 0.00s system 99% cpu 1.816 total -O2: time ./sort 30000 ./sort 30000 1.00s user 0.00s system 99% cpu 1.005 total -O3: time .

                                                            Bubble sort slower with -O3 than -O2 with GCC
                                                          • CおよびC++のコンパイラ・オプション強化ガイド - The Linux Foundation

                                                            このドキュメントは、C および C++のネイティブ(またはクロス)ツールチェーンを使用して、信頼性が高くセキュアなコードを提供するために貢献するコンパイラとリンカのオプションに関するガイドです。コンパイラオプションの強化の目的は、潜在的な攻撃や誤動作に対するセキュリティメカニズムを備えたアプリケーションバイナリ(実行可能ファイル)を生成することです。また、強化されたコンパイラオプションは、最新のオペレーティングシステム(OS) の既存のプラットフォーム セキュリティ機能とうまく統合するアプリケーションを生成するはずです。コンパイラコンパイラを効果的に設定することは、コンパイラーの警告、静的解析、デバッグインスツルメンテーションの強化など、開発中にもいくつかの利点をもたらします。 本ドキュメントは、以下の方々を対象としています: 組み込み機器、モノのインターネット機器、スマートフォン、パソコ

                                                            • Rust front-end

                                                              David Edelsohn dje.gcc@gmail.com Mon Jul 11 15:01:44 GMT 2022 Previous message (by thread): Rust front-end Next message (by thread): [RFC] Using std::unique_ptr and std::make_unique in our code Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] On Mon, Jun 27, 2022 at 10:52 AM Philip Herron <philip.herron@embecosm.com> wrote: > > Hi everyone, > > Since November 2020, I've worked full-t

                                                              • GitHub - rust-lang/rustc_codegen_gcc: libgccjit AOT codegen for rustc

                                                                You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                  GitHub - rust-lang/rustc_codegen_gcc: libgccjit AOT codegen for rustc
                                                                • GCC 16 Release Series — Changes, New Features, and Fixes - GNU Project

                                                                  GCC 16 Release Series Changes, New Features, and Fixes This page is a "brief" summary of some of the huge number of improvements in GCC 16. You may also want to check out our Porting to GCC 16 page and the full GCC documentation. Caveats int8_t etc. are now signed char on Solaris for conformance with the C99 standard. However, this is an incompatible change. See the porting notes for more informat

                                                                  • WindowsにMinGW-w64をインストールする 2025年版 - Qiita

                                                                    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに おじさん、普段C++言語でプログラムをするときは、VisualStudio Communityを使っています。 個人は無料で使えますし、やっぱりF9キーでブレイクポイントを設定できたり、F5キーを押すと自動でビルドして実行できるのがとてもよいです。 非常に便利かつ強力なIDEのVisual Studio Communityですが、商用でみんなで利用するには有料のライセンスがいります。 このためおじさんのように、どうしても無料で商用のプログラムを作成したい場合、MinGW-w64とcmakeとVisual Studio Code

                                                                      WindowsにMinGW-w64をインストールする 2025年版 - Qiita
                                                                    • A Rust-in-GCC update

                                                                      Hi everyone, Since November 2020, I've worked full-time on the Rust front-end for GCC, thanks to Open Source Security, Inc and Embecosm. As a result, I am writing to this mailing list to seek feedback from the collective experience here early to plan a path for upstreaming the front-end into GCC. 1. What is the actual process of merging a prominent feature like this upstream - How do we review thi

                                                                      • The state of static analysis in the GCC 12 compiler | Red Hat Developer

                                                                        Building a static analyzer into the C compiler offers several advantages over having a separate tool, because the analyzer can track what the compiler and assembler are doing intimately. As a Red Hat employee, I work on GCC, the GNU Compiler Collection. Our static analyzer is still experimental but is making big strides in interesting areas, including a taint mode and an understanding of assembly-

                                                                          The state of static analysis in the GCC 12 compiler | Red Hat Developer
                                                                        • Ubuntu LinuxやDebianで使う、build-essentialってなんだ? - CLOVER🍀

                                                                          これは、なにをしたくて書いたもの? たまに、Ubuntu Linux/Debianを使っている時のソフトウェアのインストール前提条件としてこういう記述を見ることがあり $ sudo apt install build-essential 「開発パッケージ一式」みたいなざっくりしたイメージでずっと捉えていたのですが、1度ちゃんと見てみようかなと 思いまして。 build-essentialとはなんなのか?という話です。 環境 今回の確認環境は、こちらです。 $ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.1 LTS Release: 20.04 Codename: focal $ uname -srvmpio Linux 5.4.0-54-gener

                                                                            Ubuntu LinuxやDebianで使う、build-essentialってなんだ? - CLOVER🍀
                                                                          • New C++ features in GCC 12 | Red Hat Developer

                                                                            Version 12.1 of the GNU Compiler Collection (GCC) is expected to be released in April 2022. Like every major GCC release, this version will bring many additions, improvements, bug fixes, and new features. GCC 12 is already the system compiler in Fedora 36. GCC 12 will also be available on Red Hat Enterprise Linux in the Red Hat Developer Toolset (version 7) or the Red Hat GCC Toolset (version 8 an

                                                                              New C++ features in GCC 12 | Red Hat Developer
                                                                            • GCC Solar Water Pumps Market Size, Growth, Trends, Report 2035

                                                                              GCC Solar Water Pumps Market Research Report By Type (Submersible Pump, Surface Pump), By Motor type (AC Pump, DC Pump), By Power Rating (Up to 5 HP, 5 HP – 10 HP, 10 HP – 20 HP, More than 20 HP), By Phase (Single, Three) andBy Application (Agriculture, Water Treatment, others)- Forecast to 2035

                                                                              • WinLibs - GCC+MinGW-w64 compiler for Windows

                                                                                WinLibs.com WinLibs standalone build of GCC and MinGW-w64 for Windows Jump to: Download | How to use from Windows Command Prompt | How to use from Code::Blocks | Philosophy | Donate What is it? In short: it's a free C and C++ compiler for Microsoft Windows. GCC (GNU Compiler Collection) is a free and open source compiler for C and C++ (and other languages like Objective-C, Fortran, D). MinGW-w64 i

                                                                                • gccで各関数が使用しているスタックサイズを出力するオプション - いろいろ備忘録日記

                                                                                  概要 プログラムがいきなり落ちた gcc の -fstack-usage オプション 現在のスタック領域のサイズを調べる 試してみる makefile github にサンプルプロジェクトをアップ 参照情報 概要 忘れないうちメモメモ。こういうのは知ってるのと知らないので手間が大きく変わりますね・・・。 プログラムがいきなり落ちた 自分が書いたプログラムではないんですが、動かしていると特定の処理パターンを通したときにいきなり死ぬという状況が発生。 C言語なので、本当にスンって死んでくれます・・w いろんなところをコメントアウトしたり、printfデバッグ入れたりして箇所は特定。 最終的にいろいろ調べたところの結果が「デフォルトのスタックサイズを超える割当をしてるのが原因」でした。これはアカン・・。 で、修正するのは良いとして、もうちょいマシな調べ方ないのかしら?って思いました。 手作業すぎ

                                                                                    gccで各関数が使用しているスタックサイズを出力するオプション - いろいろ備忘録日記

                                                                                  新着記事