The irony is that I figured I had just screwed something up on my system and was going to reinstall when this GH report came in.

I’m going to try to reproduce with installing F36, building Swift, then upgrading to F37 and see if that has any effect.

On 21 Mar 2023, at 5:17, Jonathan Wakely wrote:

On Mon, 20 Mar 2023 at 14:10, Ron Olson wrote:

Hey all-

I got this issue in my GH account I use for building Swift for Fedora: https://github.com/tachoknight/swift-lang-packaging-fedora/issues/2. The TL;DR is that the person was trying to build Swift on Rawhide which he moved to from an older version of Fedora. This tracks with something I discovered as well: I have a current Fedora VM (not Rawhide) that I’ve been upgrading from version to version for several years now, and suddenly it cannot build Swift due to a series of bizarre error messages like:


/usr/lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/set:60:10: note: in file included from /usr/lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/set:60:
#include <bits/stl_tree.h>
^
/usr/lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/bits/stl_tree.h:2008:5: error: missing '#include "gcc/x86_64-redhat-linux/12/../../../../include/c++/12/bits/stl_pair.h"'; 'pair' must be declared before it is used
pair<typename _Rb_tree<_Key, _Val, _KeyOfValue,
^
/usr/lib/gcc/x86_64-redhat-linux/12/../../../../include/c++/12/bits/stl_pair.h:185:12: note: declaration here is not visible
struct pair

However, using mock or a container, it builds fine, Rawhide, F37, whatever.

I’m guessing there’s a setting or environment variable or … ?


No, I don't think so. There's no environment variable that is needed to stop the C++ standard library headers being completely broken.

The errors above and in the GH issue make no sense to me, maybe it's a bug in Clang's modules that allow a header to be reincluded, but I don't know why it only shows up on your VM and the reporter's system.


_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-leave@lists.fedoraproject.org
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue