まぁ、それもそうか
元が配列長だしlengthは符号なし32bitで管理している変数だから意識していなかった