コンパイラによる名前修飾の相違とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > コンパイラによる名前修飾の相違の意味・解説 

コンパイラによる名前修飾の相違

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/26 23:58 UTC 版)

名前修飾」の記事における「コンパイラによる名前修飾の相違」の解説

C++では、ささいな識別子ですら、名前修飾標準スキーム存在しない。そのため、コンパイラベンダによって、あるいは同じコンパイラでも版によって、更に場合によっては同じ版でもプラットフォームによって全く異なった互換性のない方法をとることになる。同じ関数について、その違い見てみようコンパイラvoid h(int)void h(int, char)void h(void)clang 1.x _Z1hi _Z1hic _Z1hv GNU GCC 3.x _Z1hi _Z1hic _Z1hv GNU GCC 2.9x h__Fi h__Fic h__Fv Intel C++ 8.0 for Linux _Z1hi _Z1hic _Z1hv Microsoft VC++ v6/v7 ?h@@YAXH@Z ?h@@YAXHD@Z ?h@@YAXXZ Borland C++ v3.1 @h$qi @h$qizc @h$qv OpenVMS C++ V6.5 (ARM mode) H__XI H__XIC H__XV OpenVMS C++ V6.5 (ANSI mode) CXX$__7H__FI0ARG51T CXX$__7H__FIC26CDH77 CXX$__7H__FV2CB06E8 OpenVMS C++ X7.1 IA-64 CXX$_Z1HI2DSQ26A CXX$_Z1HIC2NP3LI4 CXX$_Z1HV0BCA19V Digital Mars C++ ?h@@YAXH@Z ?h@@YAXHD@Z ?h@@YAXXZ SunPro CC __1cBh6Fi_v_ __1cBh6Fic_v_ __1cBh6F_v_ HP aC++ A.05.55 IA-64 _Z1hi _Z1hic _Z1hv HP aC++ A.03.45 PA-RISC h__Fi h__Fic h__Fv Tru64 C++ V6.5 (ARM mode) h__Xi h__Xic h__Xv Tru64 C++ V6.5 (ANSI mode) __7h__Fi __7h__Fic __7h__Fv 註: OpenVMS VAXDEC AlphaIA-64を除く)及び Tru64 UNIX 上のCompaq C++ コンパイラは二種類修飾スキーム持っている標準化前のもともとのスキームARM モデルとして知られていた。これは『The Annotated C++ Reference Manual (ARM)』(邦訳注解C++リファレンスマニュアル』)に記述され方法元にしている。標準C++機能拡充、特にテンプレート機能の追加に伴いARM次第旧式化ていったある種関数型エンコードできず、異なった関数異なったシンボル名を割り当てることができなくなっていた。そこで、より新しANSI モデル導入されANSIテンプレート機能全て利用可能になったが、過去の版との互換性失われたtodo: the different isn't obvious from the examples. maybe a template or something should be added... IA-64にはアプリケーションバイナリインタフェース (ABI) 標準名前修飾規則Itanium C++ ABI mangling)が存在する(#外部リンク参照)。これは標準的な名前修飾スキーム定義したものであり、全てのIA-64コンパイラ利用されている。加えてGNU GCC 3.xもこの標準用いている。インテル環境以外でも利用することができる。

※この「コンパイラによる名前修飾の相違」の解説は、「名前修飾」の解説の一部です。
「コンパイラによる名前修飾の相違」を含む「名前修飾」の記事については、「名前修飾」の概要を参照ください。

ウィキペディア小見出し辞書の「コンパイラによる名前修飾の相違」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「コンパイラによる名前修飾の相違」の関連用語

1
10% |||||

コンパイラによる名前修飾の相違のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



コンパイラによる名前修飾の相違のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの名前修飾 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS