LoginSignup
2
2

More than 5 years have passed since last update.

pTeX エンジンが Segmentation fault を起こす

Last updated at Posted at 2015-09-09

以前の「TeXエンジンが Abort trap 6 で落ちる」の続編(!?)です。

test.tex
$\mathchoice{}{}{}{}$
\bye

というソース (UTF8) を

$ ptex test

でコンパイルしようとすると,次のように Segmentation fault で落ちます(TeX Live 2015 on OS X 10.10 Yosemite で確認)。

This is pTeX, Version 3.14159265-p3.6 (utf8.euc) (TeX Live 2015) (preloaded format=ptex)
 restricted \write18 enabled.
(./test.texSegmentation fault: 11

pTeX 系列の (e)(u)pTeX の4種類のエンジン全てで再現しました。

  • TeX Live 2015/2014 on Mac
  • TeX Live 2015/2014 on Windows
  • W32TeX 最新版
  • W32TeX 2012年頃の版
  • TeX Live 2012 on Cygwin

で再現が確認されており,随分昔から存在するバグのようです。

一方,

  • 最新版 W32TeX で pTeX のオプションに -no-guess-input-enc を付けた場合
  • ソースが SJIS のものを TeX Live 2012 on Cygwin で処理した場合

はエラーとならないことも確認されており,どうやら UTF8 の文字コードまわりの問題のようです。

Twitter の情報のまとめ






続報 (2015/09/10)

ptex-base.ch を北川さんが改修してくださいました。
これにより,pTeX のバージョンは p3.6 から p3.7 になりました。(ptex_version.h, ptex-base.ch)

既に TeX Live の上流にも r38333, r38334 としてコミットされており,次の TeX Live 2016 のリリースにおいて修正されることになります。


2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2