From 3ef5f87e1a6e456521328eebc0c486a9e84164f1 Mon Sep 17 00:00:00 2001 From: Jason Riedy Date: Tue, 29 Aug 2006 19:26:26 -0700 Subject: [PATCH] The F77 bindings should have no order parameter. The method for removing the order parameter is ugly. The plonkorder macro walks the argument chain and replaces the already-modified "int* order". The whole rewriting system likely should be re-written to iterate over arguments sensibly. --- m4/f2c-bridge.m4 | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/m4/f2c-bridge.m4 b/m4/f2c-bridge.m4 index 51203a6..0d741d4 100644 --- a/m4/f2c-bridge.m4 +++ b/m4/f2c-bridge.m4 @@ -25,13 +25,15 @@ define(`blas_size_type',`')dnl define(`blas_handle_type',`')dnl define(`blas_sparsity_optimization_type',`')dnl define(`int',`in`'t*')dnl +define(`plonkorder', `ifelse($#, 0, , `$1', `int* order', `plonkorder(shift($@))', $#, 1, ``$1'', ``$1', plonkorder(shift($@))')') extern void FC_FUNC_(translit(ROUTINE_NAME(RARG),'A-Z','a-z'),translit(ROUTINE_NAME(RARG),'a-z','A-Z')) - (ROUTINE_PARAMS(RARG)) + ( plonkorder(ROUTINE_PARAMS(RARG)) ) { +define(`order',`blas_colmajor')dnl +define(`blas_order_type',`')dnl +define(`enum',`')dnl define(`void',`')dnl define(`const',`')dnl -define(`enum',`')dnl -define(`blas_order_type',`(en`'um blas_order`'_type)*')dnl define(`blas_trans_type',`(en`'um blas_trans`'_type)*')dnl define(`blas_uplo_type',`(en`'um blas_uplo`'_type)*')dnl define(`blas_diag_type',`(en`'um blas_diag`'_type)*')dnl @@ -58,4 +60,4 @@ define(`d_array',`')dnl define(`c_array',`')dnl define(`z_array',`')dnl ROUTINE_HEAD(RARG); -} \ No newline at end of file +} -- 1.4.2.gfce41