diff --git "a/md/\347\254\254\344\270\200\351\203\250\345\210\206-\345\237\272\347\241\200\347\237\245\350\257\206/03\345\217\230\351\207\217\346\250\241\346\235\277.md" "b/md/\347\254\254\344\270\200\351\203\250\345\210\206-\345\237\272\347\241\200\347\237\245\350\257\206/03\345\217\230\351\207\217\346\250\241\346\235\277.md" index 028a1e2..a729da2 100644 --- "a/md/\347\254\254\344\270\200\351\203\250\345\210\206-\345\237\272\347\241\200\347\237\245\350\257\206/03\345\217\230\351\207\217\346\250\241\346\235\277.md" +++ "b/md/\347\254\254\344\270\200\351\203\250\345\210\206-\345\237\272\347\241\200\347\237\245\350\257\206/03\345\217\230\351\207\217\346\250\241\346\235\277.md" @@ -113,8 +113,8 @@ array 是一个数组,我们传入的模板实参用来推导出这个数组 std::cout << std::is_same_v), const std::size_t[5]>; // 1 ``` -在 msvc 会输出 **`1`**,但是 gcc、clang,却会[输出 `0`](https://godbolt.org/z/xzGx87fTK)。***msvc 是正确的***。 -gcc 与 clang 不认为 `array<1, 2, 3, 4, 5>` 与 `const std::size_t[5]` 类型相同;它们认为 `array<1, 2, 3, 4, 5>` 与 `const std::size_t[]` [类型相同](https://godbolt.org/z/TdGrK3aW1),这显然是个 **bug**。 +在 msvc 与 gcc14 会输出 **`1`**,但是 gcc14 之前的版本、clang,却会[输出 `0`](https://godbolt.org/z/PoGcoTc44)。***msvc 与 gcc14 是正确的***。 +gcc 与 clang 不认为 `array<1, 2, 3, 4, 5>` 与 `const std::size_t[5]` 类型相同;它们认为 `array<1, 2, 3, 4, 5>` 与 `const std::size_t[]` [类型相同](https://godbolt.org/z/4a5j83TsT),这显然是个 **bug**。 > 可以参见 [llvm issues](https://github.com/llvm/llvm-project/issues/79750).