brintos

brintos / llvm-project-archived public Read only

0
0
Text · 616 B · c0c16f0 Raw
29 lines · cpp
1// From https://github.com/llvm/llvm-project/issues/779532// RUN: rm -rf %t3// RUN: mkdir -p %t4// RUN: split-file %s %t5 6// RUN: %clang_cc1 -std=c++20 -emit-module-interface %t/a.cppm -o %t/a.pcm7// RUN: %clang_cc1 -std=c++20 -fmodule-file=a=%t/a.pcm %t/b.cpp -fsyntax-only -verify8 9//--- a.cppm10export module a;11 12template<typename, typename>13concept c = true;14 15export template<typename... Ts>16struct a {17	template<typename... Us> requires(... and c<Ts, Us>)18	friend bool operator==(a, a<Us...>) {19		return true;20	}21};22 23template struct a<>;24 25//--- b.cpp26// expected-no-diagnostics27import a;28template struct a<int>;29