MSVC ICE 编译期内部错误
· 阅读需 1 分钟
菜逼 MSVC 随便写写就触发 ICE 了, 微软你写的什么狗屎代码?
C++小知识
查看所有标签菜逼 MSVC 随便写写就触发 ICE 了, 微软你写的什么狗屎代码?
速记, 此bug比较难报告上去.
MSVC屎山代码发力了, 真无敌了! 明明只是一个 requires 的二阶段查找的问题 なのに...
实际上后面发现是 前向声明 问题, 当然, 实际上也利用了 二阶段名称查找
不知道起什么名字, 直接看要实现什么吧:
struct Wdf {
template <bool... Bs, typename... Ts>
std::size_t func(db::FieldPair<Ts>...) {
// ...
}
};
如何获取 &Wdf::func<Bs..., Ts...>?
Tip
此为期望效果, [&Wdf::func<Bs..., Ts...>] 语法是错误的! 因为 Ts... 无法被指定.
冷门应用场景, 但是也算是比较方便吧~
Tip
本文只有恶意. win都💩! MS💩VC!
最近重拾之前写的音乐播放器项目. 因为一开始是使用 QWidget 开发的. 可是我尊贵的 Arch Linux 使用的是 KDE (Wayland) 桌面系统...
之前在写反射的时候, 遇到的这个问题; 一开始以为是我自己写错了, 排查了半天, 从 VsCode 换到 MSVC...
最后写了最小复现案例, 然后才发现就是 MSVC sabi!
之前写项目的时候发现一个gcc编译器bug. 尝试给他们提 issues 了~...
今天在完善 iocp 与 io_uring 协程api的统一, 主要是超时取消这块.
Tip
win 你是真的np, 设计的什么破api这么难用... 真难对接...