Index: generic/predefined.h =================================================================== diff -u -red15b5be7e88cbbcdf6121f3869722dbc354d76f -r89fec6ccb2d935530a2ab141440ca343deda3338 --- generic/predefined.h (.../predefined.h) (revision ed15b5be7e88cbbcdf6121f3869722dbc354d76f) +++ generic/predefined.h (.../predefined.h) (revision 89fec6ccb2d935530a2ab141440ca343deda3338) @@ -161,8 +161,8 @@ "if {[$slot exists type]} {\n" "set type [$slot type]\n" "if {[string match ::* $type]} {\n" -"lappend objopts type=$type\n" -"lappend methodopts type=$type} else {\n" +"lappend objopts object type=$type\n" +"lappend methodopts object type=$type} else {\n" "lappend objopts $type\n" "lappend methodopts $type}}\n" "if {[$slot exists multivalued] && [$slot multivalued]} {\n" @@ -458,10 +458,15 @@ "foreach property [split $properties ,] {\n" "if {$property eq \"required\"} {\n" "lappend opts -required 1} elseif {$property eq \"multivalued\"} {\n" -"lappend opts -multivalued 1} elseif {[string match arg=* $property]} {\n" +"lappend opts -multivalued 1} elseif {[string match type=* $property]} {\n" +"set type [string range $property 5 end]\n" +"if {![string match ::* $type]} {set type ::$type}} elseif {[string match arg=* $property]} {\n" "set argument [string range $property 4 end]\n" "lappend opts -arg $argument} else {\n" -"lappend opts -type $property}}}\n" +"set type $property}}}\n" +"if {[info exists type]} {\n" +"lappend opts -type $type\n" +"unset type}\n" "set cmd [list ::xotcl::Attribute create [::xotcl::self]::slot::$name {*}$opts]\n" "if {$l == 1} {\n" "eval $cmd} elseif {$l == 2} {\n"