Remapped rank/bounds to avoid implicit intermediate arrays when calling sgesv. More compact version-checks: revised CPVERSION macro and provided variants (CPVERSION2, CPVERSION3). Fixed some typo (console output). Fixed intent. Cleanup (minor). Note: b-matrix of sgesv apparently requires an array-temporary due to memory layout (the a-temporary was removed or made explicit such that no related compiler messages appear).