Better support for non-native implementations
Testing with Clozure reveals more details on the stack overflow problem than what CLISP reveals. This is fixed by using #'slot-value instead of #'cl-array in #'copy-c-to-cl and #'copy-cl-to-c. Non-complex arrays were not handled correctly in #'copy-array-from-pointer; fixed. There is a dependency of permutation and combination on the definition of #'data-class-name through defmfun. Test results: CCL: TOTAL: 1143 assertions passed, 52 failed, 3 execution errors. CLISP: TOTAL: 996 assertions passed, 149 failed, 11 execution errors. SBCL: TOTAL: 1208 assertions passed, 0 failed, 0 execution errors. (But only the second time it's run in SLIME.) Variable *print-contents* to disable printing of marray contents in print-object; this is helpful for debugging.
Showing with 26 additions and 18 deletions