Index: generic/predefined.h =================================================================== diff -u -rb9eae4f9d548939af915f0f27141389d18172485 -r9ae7c34e49e4ac28083909acb8d39964e51c42ec --- generic/predefined.h (.../predefined.h) (revision b9eae4f9d548939af915f0f27141389d18172485) +++ generic/predefined.h (.../predefined.h) (revision 9ae7c34e49e4ac28083909acb8d39964e51c42ec) @@ -227,7 +227,7 @@ "if {[::xotcl2::Object info callable $m] ne \"\"} continue\n" "if {[string match __* $m]} continue\n" "lappend methods $m}\n" -"error \"Method '$method' unknown for slot [[::xotcl::current object]; valid are: {[lsort $methods]]}\"}\n" +"error \"Method '$method' unknown for slot [::xotcl::current object]; valid are: {[lsort $methods]}\"}\n" "::xotcl::ObjectParameterSlot public method destroy {} {\n" "if {${:domain} ne \"\" && [::xotcl::objectproperty ${:domain} class]} {\n" "${:domain} __invalidateobjectparameter}\n" @@ -401,6 +401,7 @@ ":method forward args {::xotcl::next; :optimize}\n" ":protected method init args {::xotcl::next; :optimize}\n" ":public method optimize {} {\n" +"if {![info exists :methodname]} {return}\n" "set object [expr {${:per-object} ? {object} : {}}]\n" "if {${:per-object}} {\n" "set perObject -per-object\n" @@ -430,8 +431,7 @@ "$slotclass createFromParameterSyntax [::xotcl::current object] -per-object -initblock $initblock {*}$spec}\n" "::xotcl2::Class public method parameter arglist {\n" "foreach arg $arglist {\n" -"::xotcl::Attribute createFromParameterSyntax [::xotcl::current object] {*}$arg}\n" -"::xotcl::setvar [::xotcl::current object]::slot __parameter $arglist}\n" +"::xotcl::Attribute createFromParameterSyntax [::xotcl::current object] {*}$arg}}\n" "proc createBootstrapAttributeSlots {} {}\n" "::xotcl::Slot method type=hasmixin {name value arg} {\n" "if {![::xotcl::objectproperty $value hasmixin $arg]} {\n"