Issue |
150581
|
Summary |
[Clang] ICE with forward declares and modules
|
Labels |
clang
|
Assignees |
|
Reporter |
kish1n
|
Here is my best reduction to reproduce. This error has occurred for me on both 20.1.7 and 20.1.8. Interestingly, it does not reproduce on my self-built clang in either Debug or Optimized. Only occurs on the binary from arch repo, so not sure how to go about debugging this.
render_impl.cpp
```
module lotus:render.impl;
import std;
import :GameObject;
import :State;
import :render;
import :programs;
void BasicTriangleDrawer::draw(State *state) {
std::vector<float> vertices;
vertices.reserve(state->objs.size());
}
```
GameObject.ixx
```
export module lotus:GameObject;
export class GameObject {};
```
Render.ixx
```
export module lotus:render;
import std;
import :State;
export class BasicTriangleDrawer {
public:
void draw(State *state);
};
```
programs.ixx
```
export module lotus:programs;
export namespace zzz {}
```
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs