https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120061

            Bug ID: 120061
           Summary: [14 Regression] libqt6webengine fails static_assert
                    (__LINE__ == 470, ...)
           Product: gcc
           Version: 14.3.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: preprocessor
          Assignee: unassigned at gcc dot gnu.org
          Reporter: rguenth at gcc dot gnu.org
  Target Milestone: ---

There is a recent regression on the branch failing to build libqt6webengine
running into a static assert in
src/3rdparty/chromium/third_party/blink/public/common/interest_group/auction_config.h
(and at least one other place) that
looks like the following.  The 'static_assert' is on line 470 but preprocessing
makes it

 static_assert(471 == 470, R"(

---

  static_assert(__LINE__ == 470, R"(
If modifying AuctionConfig fields, please make sure to also modify:

* third_party/blink/public/mojom/interest_group/interest_group_types.mojom
* Mojo serialization in:
   
third_party/blink/public/common/interest_group/auction_config_mojom_traits.h
    third_party/blink/common/interest_group/auction_config_mojom_traits.cc
* Fuzzer test (only needed for new promise or required fields) in:
   
content/test/data/fuzzer_corpus/ad_auction_service_mojolpm_fuzzer/basic_auction.textproto
* NumPromises() if it's a Promise.
* SerializeAuctionConfigForDevtools() (in devtools_serialization.cc)
* Add some non-trivial values for the type into CreateFullAuctionConfig() in
    third_party/blink/common/interest_group/auction_config_test_util.cc
* Update devtools serialization expectations in
    third_party/blink/common/interest_group/devtools_serialization_unittest.cc
* If the value has special validation logic, add a test to
    third_party/blink/common/interest_group/auction_config_mojom_traits_test.cc
  (If it's just passing along some values, adding to CreateFullAuctionConfig()
  will provide some coverage automatically).
)");

---

I have not being able to produce a small testcase that fails, including the
preprocessed source of course doesn't help ...

Placing another __LINE__ above somewhere shows it also off-by-one, so I'm
making this a prepocessor bug, possibly caused by r14-11679-g8a884140c2bcb7

Reply via email to