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

--- Comment #18 from Alberto <alberto.gcc.bugzilla at gmail dot com> ---

Thanks so much Nathaniel!

I've applied your patch and now I can build the std module with -fopenmp.

Unfortunately, I couldn't test it with my use case because I'm hitting a couple
of likely unrelated issues.

I could reduce one of those to:

``` M.cpp
module;

#include <vector>

export module M;

import std;

namespace M
{

export
template<std::size_t d>
struct T
{
  static void foo(int n)
  {
  std::vector<int> u(n);
  std::vector<int> v(n);

  for (auto const &[a, b] : std::views::zip(u, v)) ;
  }

  static void bar(int n)
  {
  std::vector<int> u(n);
  std::vector<double> v(3 * n);

  for (auto const &[a, b] : std::views::zip(u, v | std::views::chunk(3u))) ;
  }
};

}
```
``` main.cpp
import M;

int main()
{
  M::T<2>::foo(10);
}
```

I'm having a hard time reducing the other issue (this line fails to compile:
https://github.com/AlbertoEscrig/VF/blob/e7a1eb5e13bd11110b031a287f22a31efbe6fe68/Campo.cpp#L41).
I will try harder.

I'm going to apply your patch to the 15 branch to see if it works there.

Reply via email to