[PATCH] D133711: [Sema] Reject array element types whose sizes aren't a multiple of their alignments

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 15 05:08:57 PDT 2022


aaron.ballman added a comment.

In D133711#3790933 <https://reviews.llvm.org/D133711#3790933>, @rnk wrote:

> This seems like a new error that will be pretty easy to run into, especially in the funky MSVC virtual base case. @aaron.ballman proposed some kind of new breaking change announcement mechanism. Can you add a release note and send an announcement following that process? I think it's just posting to Discourse announcements.

I just landed the change to the release notes so there's now a potentially breaking changes section to put the note under. We're not quite ready to post to announcements yet (that channel is locked so we need to remove the gatekeeping mechanism there), but when I'm able to post to announcements, I plan to announce everything already in the release notes anyway. So I'd say adding `clang-vendors` like @efriedma did and putting in the release notes is great for now.

Note, precommit CI found a relevant failure:

  ******************** TEST 'Clang :: CodeGenCXX/override-layout-packed-base.cpp' FAILED ********************
  
  Script:
  
  --
  
  : 'RUN: at line 1';   /var/lib/buildkite-agent/builds/llvm-project/build/bin/clang -cc1 -internal-isystem /var/lib/buildkite-agent/builds/llvm-project/build/lib/clang/16.0.0/include -nostdsysteminc -triple i686-windows-msvc -w -fdump-record-layouts-simple -foverride-record-layout=/var/lib/buildkite-agent/builds/llvm-project/clang/test/CodeGenCXX/Inputs/override-layout-packed-base.layout /var/lib/buildkite-agent/builds/llvm-project/clang/test/CodeGenCXX/override-layout-packed-base.cpp | /var/lib/buildkite-agent/builds/llvm-project/build/bin/FileCheck /var/lib/buildkite-agent/builds/llvm-project/clang/test/CodeGenCXX/override-layout-packed-base.cpp
  
  --
  
  Exit Code: 1
  
  
  
  Command Output (stderr):
  
  --
  
  /var/lib/buildkite-agent/builds/llvm-project/clang/test/CodeGenCXX/override-layout-packed-base.cpp:38:7: error: size of array element of type 'C' (11 bytes) isn't a multiple of its alignment (4 bytes)
  
    C cs[sizeof(C)];
  
        ^
  
  /var/lib/buildkite-agent/builds/llvm-project/clang/test/CodeGenCXX/override-layout-packed-base.cpp:39:7: error: size of array element of type 'D' (15 bytes) isn't a multiple of its alignment (4 bytes)
  
    D ds[sizeof(D)];
  
        ^
  
  2 errors generated.
  
  
  
  --
  
  
  
  ********************


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D133711/new/

https://reviews.llvm.org/D133711



More information about the cfe-commits mailing list