私は Windows バイナリ用のリンカーを作成しており、現在 COMDAT の実装に取り組んでいます。COMDAT セクションの 3 つのレコード (セクション ヘッダー、セクション シンボル、および補助シンボル) を除いて、仕様のほとんどを理解していると思います。仕様では、それらのいずれにも保存されている共通名について言及していないようです。
つまり、そのようなオブジェクトに対して dumpbin を実行すると、次のような出力が得られます。
SECTION HEADER #8
.text$mn name
0 physical address
0 virtual address
5 size of raw data
2358 file pointer to raw data (00002358 to 0000235C)
235D file pointer to relocation table
0 file pointer to line numbers
1 number of relocations
0 number of line numbers
60301020 flags
Code
COMDAT; sym= cosl
最後のアイテムはどこsym= cosl
から来たのですか?あるいは、セクションを指しているのが通常のシンボルである場合、そのセクションを指しているそのようなシンボルが複数ある場合はどうなるでしょうか?