经过我一晚的奋战,WyOJ 已经成功加入了一个 UB 检测器!
具体使用,只需要把语言选为 C++17ubsan,然后重新提交!非常简单也非常好用!!!!!!
然后,点击 Runtime Error 的数据点,可以看到 output 区域包含了具体 UB 信息。
具体的实现是,我把 C++17ubsan 语言的 stderr 输出到了输出文件,于是 output 就会包含原先 stderr 的内容。
如果你的 stderr 内容过多,可能导致 UB 信息被挤掉看不到。 这时可以 #define stderr stdout
,然后重新提交。
原先 AC 的点会变成 WA
使用检测器后的代码常数会变大不少,所以可能导致 TLE。
比赛期间看不到 output,所以本功能也自然在赛时无用。
同时,Special Judge 和 Hack 功能也已经修好!