>620に自己レス。

CPUウィンドウで確認したところ、最適化の状況(Aの割り当てられ方など)によってメモリを破壊する事が判明。
嘘情報書いてしまいました。

やはり、procedure StrToSet(TypeInfo: PTypeInfo; const Value: string; out Result): とするしか無いかも。