================
@@ -6158,6 +6085,9 @@ void CodeGenModule::EmitGlobalVarDefinition(const VarDecl 
*D,
   if (getLangOpts().OpenCL && ASTTy->isSamplerT())
     return;
 
+  if (getLangOpts().Reflection && ASTTy->isMetaInfoType())
----------------
katzdm wrote:

I think it's not a matter of linkage, but a matter of odr-use outside of an 
immediate function context - variables of type `std::meta::info` shouldn't be 
usable in a manner that requires codegen, because of the rules sounds 
consteval-only types (note: not implemented here; in flux via CWG3150).

In the presence of consteval-only type rules, I think it would be better for 
this to be an assert - but I'm not sure we want an assert-failure crashing out 
every time somebody declared a non-constexpr `info`.

So maybe just let it leak to runtime for now and leave a `TODO`? What seems 
best for now?

https://github.com/llvm/llvm-project/pull/190356
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to