[Bug 2108968] Re: Enable -fzero-init-padding-bits=all, -Wbidi-chars=any

Launchpad Bug Tracker 2108968 at bugs.launchpad.net
Sat Aug 2 03:06:55 UTC 2025


This bug was fixed in the package gcc-15 - 15.1.0-10ubuntu2

---------------
gcc-15 (15.1.0-10ubuntu2) questing; urgency=medium

  * Update to git 20250727 from the gcc-15 branch.
    - Fix PR middle-end/121095, PR target/120119 (AArch64),
      PR tree-optimization/121202, PR tree-optimization/117423,
      PR middle-end/119835, PR lto/120308, PR target/119737 (GCN),
      PR target/121027 (AArch64). PR target/118891 (AArch64),
      PR tree-optimization/118891, PR ada/121184, PR c++/120577,
      PR c++/121055, PR c++/120412, PR fortran/121203, PR fortran/121145,
      PR modula2/121164, PR target/119853, PR target/119854,
      PR middle-end/119835, PR lto/120308, PR target/120530,
      PR target/119692, PR target/119853, PR target/119854,
      PR target/119737, PR target/118794, PR libstdc++/119962.
  * Revert the baseline bump for riscv64 for now.

gcc-15 (15.1.0-10ubuntu1) questing; urgency=medium

  * Merge with Debian; remaining changes:
    - Build from upstream sources.
    - Build with --enable-checking=release.

gcc-15 (15.1.0-10) experimental; urgency=medium

  * Update to git 20250719 from the gcc-15 branch.
    - Fix PR target/120356 (RISCV), PR target/120995 (RISCV),
      PR ipa/121023, PR tree-optimization/120780, PR tree-optimization/120358,
      PR tree-optimization/118669, PR tree-optimization/120817,
      PR tree-optimization/120927, PR tree-optimization/120944,
      PR middle-end/120369, PR rtl-optimization/120795,
      PR rtl-optimization/120550, PR tree-optimization/120927,
      PR middle-end/120608, PR tree-optimization/120729,
      PR tree-optimization/120654, PR target/120624 (AArch64),
      PR rtl-optimization/120347, PR middle-end/120608, PR middle-end/120631,
      PR target/119971 (RISCV), PR tree-optimization/120677,
      PR rtl-optimization/120423, PR rtl-optimization/116389, PR c/120837,
      PR c++/120628, PR c++/120569, PR c++/120575, PR c++/116064,
      PR c++/120940, PR c++/120684, PR c++/118856, PR c++/120471,
      PR fortran/120843, PR fortran/120847, PR fortran/120843,
      PR fortran/120711, PR fortran/120784, PR fortran/120784,
      PR fortran/119948, PR fortran/51961, PR modula2/120253,
      PR libstdc++/119754, PR libstdc++/120997, PR libstdc++/118681,
      PR libstdc++/120934, PR libstdc++/120931, PR libstdc++/120648,
      PR libstdc++/120650, PR middle-end/120935, PR tree-optimization/120924,
      PR tree-optimization/121059, PR tree-optimization/121049,
      PR tree-optimization/121035, PR tree-optimization/121131,
      PR target/120807 (loongarch), PR middle-end/120709,
      PR target/120999 (AArch64), PR rtl-optimization/120242,
      PR rtl-optimization/120627, PR rtl-optimization/120736,
      PR rtl-optimization/120813, PR target/118241 (RISCV),
      PR target/118241 (RISCV), PR target/120908 (x86), PR target/120908 (x86),
      PR ada/121056, PR fortran/121060, PR fortran/104428, PR fortran/120637,
      PR modula2/121164, PR modula2/120912, PR modula2/117203,
      PR modula2/120731, PR modula2/120673, PR modula2/119650,
      PR modula2/120606, PR modula2/119650, PR modula2/120542,
      PR modula2/120474, PR modula2/120497, PR modula2/120389.
  * Enable LRA support on sh4 (Adrian Glaubitz). Closes: #1108158.
  * Fix NaN signalling bit and propagation rules on sh4 (Adrian Glaubitz).
    Closes: #1109115.
  * Drop obsolete ia64-disable-selective-scheduling patch (Adrian Glaubitz).
    Closes: #1108247.
  * Enable algol on sh4 (Adrian Glaubitz). Closes: #1108261.
  * RISC-V: Minimal support for ssnpm, smnpm and smmpm extensions (taken from
    the trunk, Heinrich Schuchardt). LP: #2116120.
  * RISC-V: Bump to the RVA23U64 extension profile for Ubuntu 25.10 and later
    (Heinrich Schuchardt). LP: #2116086.
  * Enable -fzero-init-padding-bits=all, -Wbidi-chars=any for Ubuntu 25.10
    and later. LP: #2108968.
  * Bump standards version.

 -- Matthias Klose <doko at ubuntu.com>  Sun, 27 Jul 2025 14:24:21 +0200

** Changed in: gcc-15 (Ubuntu)
       Status: Triaged => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to dpkg in Ubuntu.
https://bugs.launchpad.net/bugs/2108968

Title:
  Enable -fzero-init-padding-bits=all, -Wbidi-chars=any

Status in dpkg package in Ubuntu:
  Confirmed
Status in gcc-15 package in Ubuntu:
  Fix Released

Bug description:
  Hello, please consider this *untested* debdiff that I hope would
  enable -fzero-init-padding-bits=all and -Wbidi-chars=any in the
  Ubuntu-specific GCC specs.

  The first option, -fzero-init-padding-bits=all, is asking the compiler
  to zero out bits in unions and structs. GCC 15 moved to a more
  standards-compliant implementation
  https://gcc.gnu.org/gcc-15/changes.html -- we could bring back the GCC
  14 behavior with -fzero-init-padding-bits=unions but the option of
  zeroing even the unused padding bits is available to us now, I believe
  we should use it. https://gcc.gnu.org/onlinedocs/gcc/Code-Gen-
  Options.html#index-fzero-init-padding-bits_003dvalue

  The second option, -Wbidi-chars=any, brings no runtime security
  benefits. Instead, it will log instances of potentially malicious use
  of Unicode bidirectional characters that can mask malicious code from
  human inspection. I hope some day we could scrape the logs to discover
  abuse. https://best.openssf.org/Compiler-Hardening-Guides/Compiler-
  Options-Hardening-Guide-for-C-and-C++#enable-warnings-for-possibly-
  misleading-unicode-bidirectional-control-characters
  https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wbidi-
  chars_003d

  I tried to introduce -fhardened (
  https://bugs.launchpad.net/ubuntu/+source/gcc-14/+bug/2080267 ,
  https://best.openssf.org/Compiler-Hardening-Guides/Compiler-Options-
  Hardening-Guide-for-C-and-C++#enable-pre-determined-set-of-hardening-
  options-in-gcc ) but ran into significant problems. We should have a
  conversation about it. I was really hoping -fhardened could address
  https://bugs.launchpad.net/ubuntu/+source/gcc-14/+bug/2078989 -- and I
  think it would -- but the -Whardened warning messages (
  https://best.openssf.org/Compiler-Hardening-Guides/Compiler-Options-
  Hardening-Guide-for-C-and-C++#additional-considerations-6 ) are
  obnoxious enough that we can't possibly ship the implementation that I
  came up with.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/2108968/+subscriptions




More information about the foundations-bugs mailing list