summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/sbin/GridFuncStuff.pl20
1 files changed, 10 insertions, 10 deletions
diff --git a/lib/sbin/GridFuncStuff.pl b/lib/sbin/GridFuncStuff.pl
index 1bc910a6..0bf6bea3 100644
--- a/lib/sbin/GridFuncStuff.pl
+++ b/lib/sbin/GridFuncStuff.pl
@@ -92,30 +92,30 @@ sub CreateVariableBindings
push(@data, ' const char *implementation, const char *varname);');
push(@data, '');
- push(@data, '#define PASS_GROUPSIZE(group, dir) CCTKGROUPNUM_##group >= 0 ? \\');
- push(@data, ' CCTK_ArrayGroupSizeI(GH, dir, CCTKGROUPNUM_##group) : &_cctk_zero');
+ push(@data, '#define PASS_GROUPSIZE(group, dir) (CCTKGROUPNUM_##group >= 0 ? \\');
+ push(@data, ' CCTK_ArrayGroupSizeI(GH, dir, CCTKGROUPNUM_##group) : &_cctk_zero)');
push(@data, '');
- push(@data, '#define PASS_GROUPLEN(thorn, group) CCTKGROUPNUM_##group >= 0 ? \\');
- push(@data, ' CCTKi_GroupLengthAsPointer(#thorn "::" #group) : &_cctk_zero');
+ push(@data, '#define PASS_GROUPLEN(thorn, group) (CCTKGROUPNUM_##group >= 0 ? \\');
+ push(@data, ' CCTKi_GroupLengthAsPointerI(CCTKGROUPNUM_##group) : &_cctk_zero)');
push(@data, '');
push(@data, '/*');
push(@data, ' * References to non-existing or non-allocated variables should be passed');
push(@data, ' * as NULL pointers in order to catch any invalid access immediately');
push(@data, ' * However, this runtime debugging feature may cause problems');
push(@data, ' * with some fortran compilers which require all fortran routine arguments');
- push(@data, ' * to refer to a valid memory location (eg. to enable the code optimizer');
+ push(@data, ' * to refer to a valid memory location (e.g. to enable the code optimizer');
push(@data, ' * to generate conditional load/store instructions if applicable).');
push(@data, ' * For this reason, we pass NULL pointers only for debugging configurations,');
push(@data, ' * and a pointer to a user-accessable memory location (a local dummy variable)');
push(@data, ' * otherwise.');
push(@data, ' */');
push(@data, '#ifdef CCTK_DEBUG');
- push(@data, '#define PASS_REFERENCE(var, level) CCTKARGNUM_##var >= 0 ? \\');
- push(@data, ' GH->data[CCTKARGNUM_##var][level] : 0');
+ push(@data, '#define PASS_REFERENCE(var, level) (CCTKARGNUM_##var >= 0 ? \\');
+ push(@data, ' GH->data[CCTKARGNUM_##var][level] : (void *) 0)');
push(@data, '#else');
- push(@data, '#define PASS_REFERENCE(var, level) CCTKARGNUM_##var >= 0 && \\');
- push(@data, ' GH->data[CCTKARGNUM_##var][level] ? \\');
- push(@data, ' GH->data[CCTKARGNUM_##var][level] : _cctk_dummy_var');
+ push(@data, '#define PASS_REFERENCE(var, level) (CCTKARGNUM_##var >= 0 && \\');
+ push(@data, ' GH->data[CCTKARGNUM_##var][level] ? \\');
+ push(@data, ' GH->data[CCTKARGNUM_##var][level] : _cctk_dummy_var)');
push(@data, '#endif');
push(@data, '');