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

Nathaniel Shead <nshead at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |nshead at gcc dot gnu.org

--- Comment #4 from Nathaniel Shead <nshead at gcc dot gnu.org> ---
I'm currently running a reduction (and actually have been for a couple of
days!) doing exactly that just in case. Still a long way to go, my machine is
not particularly powerful; in case anyone's interested, this is the reduction
script I'm using, where 'format.hpp' started as the preprocessed contents of
<format>:


#!/bin/bash

set -ex
rm -rf gcm.cache

CXXFLAGS="-fmodules -std=c++23 -w -Wfatal-errors -Werror=template-body"

# no modules still works
cat <<eof >nomod.cpp
#include "format.hpp"
int main() {
  auto _ = std::format("{:5.1f}", 3.14);
}
eof
g++-16 $CXXFLAGS nomod.cpp && ./a.out

# modules fails
cat <<eof >mod.hpp
#include "format.hpp"
eof

cat <<eof >mod.cpp
#include "format.hpp"
import "mod.hpp";

int main() {
  auto _ = std::format("{:5.1f}", 3.14);
}
eof

g++-16 $CXXFLAGS mod.hpp mod.cpp
./a.out && exit 1 || exit 0

Reply via email to