Ticket #45541

pick_random_tech_to_lose() compile error

Open Date: 2022-09-01 08:45 Last Update: 2022-10-09 11:30

Reporter:
Owner:
Type:
Status:
Closed
Component:
MileStone:
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
2

Details

I've got a compile error from pick_random_tech_to_lose() on a meson based build with -Doptimization=3, and gcc-12.

This looks somewhat familiar. Likely this is what we resolved with #42885 for the autotools side. What I didn't realize at the time autotools failure was being investigated is that advance_count(); is not called ONLY within the iterator macro, but pick_random_tech_to_lose() calls it also before the iteration. That's another reason for the compiler to be worried about its return values.

Ticket History (3/8 Histories)

2022-09-01 08:45 Updated by: cazfi
  • New Ticket "pick_random_tech_to_lose() compile error" created
2022-09-01 10:35 Updated by: cazfi
Comment

Reply To cazfi

What I didn't realize at the time autotools failure was being investigated is that advance_count(); is not called ONLY within the iterator macro, but pick_random_tech_to_lose() calls it also before the iteration. That's another reason for the compiler to be worried about its return values.

That was not the main issue here, but raised #45542 about it - I got mostly ready patch for it, when testing various things, anyway.

2022-09-01 10:57 Updated by: cazfi
  • Owner Update from (None) to cazfi
  • Resolution Update from None to Accepted
  • Milestone Update from (None) to 3.1.0 (closed)
  • Component Update from (None) to General
Comment

I don't think we need this to S3_0 at the moment. There's no meson based build there, and autotools based build usually has the relevant warning turned off. Though it's possible that we need this later, for clang analyzer builds that handle compiler flags a bit differently from normal build.

2022-09-07 06:26 Updated by: cazfi
Comment

Targeting to S3_0 after all, but only after 3.0.4 release (in 3.0.5 cycle). Patch attached. Will not wait with S3_1 and master, but push those ones soon.

2022-09-07 10:50 Updated by: cazfi
Comment

Reply To cazfi

Will not wait with S3_1 and master, but push those ones soon.

Pushed.

2022-10-09 11:30 Updated by: cazfi
  • Status Update from Open to Closed
  • Resolution Update from Accepted to Fixed

Edit

Please login to add comment to this ticket » Login