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

--- Comment #3 from printfne at gmail dot com ---
(In reply to Andrew Pinski from comment #1)
> Can you provide the preprocessed source and NOT just a cmake file but all of
> the commands neded to generate the error?

Of course.

// main.cpp 
import MultArray;
int main(int argc,char *argv[]) {
    MultArray<int,2> array;
    return 0;
}

// MultArray.cpp
module;
#include <iostream>
export module MultArray;

export template<typename T,int N = 2>
class MultArray {  };

template<typename T>
class MultArray<T,2> {  };

// Image.cpp
module;
#include <opencv2/opencv.hpp>
export module Image;
import MultArray;

export class Image {  };    

// Camera.cpp
module;
#include <opencv2/opencv.hpp>
export module Camera;
import Image;

export class Camera {  };

g++ main.cpp Camera.cpp Image.cpp MultArray.cpp -fmodules-ts

This compile command needs to be executed twice. The first command generates an
error and creates the gcm.cache folder. The second command reproduces the above
error message.

Reply via email to