リンカーを強化した「Go 1.15」が公開

 Googleのプログラミング言語「Go」開発チームは8月11日、最新版となる「Go 1.15」を公開した。リンカーの強化などの特徴を備える。

 Go 1.15は2月に公開したGo 1.15に続く最新安定版。

 リンカーを大きく強化した。オブジェクトファイルフォーマットの設計を新しくしたり、並列性を強化するなどの改善を加えるなどの強化により、時間とメモリの両方でリソースの使用効率を改善した。これにより、大規模なGoプログラムの場合(Linux/FreeBSD/NetBSDなどELF形式のOSとamd64アーキテクチャ)でリンカーは20%高速に、メモリ使用量も30%削減するという。コードの堅牢性と保守性の改善にもつながったという。

 コアライブラリでは、タイムゾーンデータベースをプログラムに組み込むtzdataパッケージが加わった。tzdataをインポートすることで、ローカルのシステムにタイムゾーンデータベースがない場合でもタイムゾーン情報を検出できるという。

 コアライブラリではこのほかにも、G言語のEGLConfigがGoのuninptrに変換されるようになった。また、非推奨となっていたX.509 CommonNameがデフォルトで無効となった。Subject Alternative Namesがない場合に、ホスト名としてX.509証明書のCommonNameフィールドを扱うもので、一時的に再度有効にする場合はGODEBUG環境変数をx509ignoreCN=0にする。

 ランタイムでは、コア数が高い時の小規模オブジェクトの割り当ての性能を改善し、遅延も少なくなった。

 このほか多数の細かな強化が加わっている。

Go
https://golang.org/