__hspver__ と hspver って何が違うのかな...。
mes strf( "__hspver__ = %#x", __hspver__ )
mes strf( "hspver = %#x", hspver )
__hspver__ = 0x3001 hspver = 0x3027
(HSP 3.1 で実行した結果)
hspver の方は ヘルプに載っていて「 HSP のバージョンコード + マイナーバージョンコードの値」ということみたいだけれど。じゃあ、__hspver__ はバージョンコード(メジャーバージョン)だけの値かな。
答えっぽいのが、ググったらすぐありました。
hspver が、バージョンコード + マイナーバージョンコードの値
、__hspver__ が、上位8bit、下位8bitがメジャー・マイナーバージョンを示す
、ということですね。(HSP 付属マニュアル(hspprog.htm)より引用)
ていうか表す値以前に、マクロ( __hspver__ )か、マクロでない(システム変数?)( hspver )かっていう大きな違いがあったよ...。
もっと良い言い方に気が付きました。 __hspver__ がマクロで hspver がシステム変数ということは、要するに __hspver__ がコンパイラのバージョンで、 hspver はランタイムのバージョンってことです。