summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/c.tcl7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/c.tcl b/lib/c.tcl
index 039e6d25..9e155502 100644
--- a/lib/c.tcl
+++ b/lib/c.tcl
@@ -241,15 +241,16 @@ namespace eval c {
}]
variable argtypes
- set argscripts [list] ;# TODO: return a dictionary
+ set argscripts [list {$argtype $argname;}]
foreach {fieldtype fieldname} $fields {
lappend argscripts [csubst {
Tcl_Obj* obj_$fieldname;
Tcl_DictObjGet(interp, \$obj, Tcl_ObjPrintf("%s", "$fieldname"), &obj_$fieldname);
}]
- lappend argscripts [arg $fieldtype \$argname.$fieldname obj_$fieldname]
+ lappend argscripts [arg $fieldtype \${argname}_$fieldname obj_$fieldname]
+ lappend argscripts [subst {\$argname.$fieldname = \${argname}_$fieldname;}]
}
- argtype $type [list expr [list [join $argscripts "\n"]]]
+ argtype $type [join $argscripts "\n"]
variable rtypes
rtype $type {