Rumah > pembangunan bahagian belakang > C++ > Mengapa GCC Gagal Mengumpul Pengkhususan Eksplisit dalam Skop Bukan Ruang Nama?

Mengapa GCC Gagal Mengumpul Pengkhususan Eksplisit dalam Skop Bukan Ruang Nama?

Susan Sarandon
Lepaskan: 2024-11-16 05:40:03
asal
230 orang telah melayarinya

Why Does GCC Fail to Compile Explicit Specialization in Non-Namespace Scope?

Pengkhususan Eksplisit dalam Skop Bukan Ruang Nama

Kod yang diberikan gagal untuk disusun dalam GCC walaupun berjaya menyusun dalam Clang. Mengikut piawaian C ([temp.expl.spec]), pengkhususan eksplisit boleh diisytiharkan dalam mana-mana skop di mana templat utama yang sepadan boleh ditakrifkan.

Tingkah laku ini kelihatan seperti pepijat dalam GCC. Menurut CWG 727, peraturan dalam [temp.expl.spec] mengenai pengkhususan eksplisit telah diubah suai untuk membenarkan pengisytiharan sedemikian dalam mana-mana skop yang berkaitan.

Skop Pengkhususan Eksplisit

Standard asal menyatakan bahawa pengkhususan eksplisit harus diisytiharkan dalam ruang nama yang melampirkan templat khusus. Walau bagaimanapun, piawaian semasa membenarkan pengkhususan eksplisit dalam mana-mana skop di mana templat utama boleh ditakrifkan:

  • Takrifan kelas (12.2)
  • Fungsi ahli (17.6.2)
  • Ruang nama sebaris (10.3.1.2)

Kegagalan GCC untuk mematuhi peraturan yang dikemas kini ini merupakan pepijat. Isu ini telah dikenal pasti sebagai Bug 85282 dan kini dijejaki oleh pasukan pembangunan GCC.

Atas ialah kandungan terperinci Mengapa GCC Gagal Mengumpul Pengkhususan Eksplisit dalam Skop Bukan Ruang Nama?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan