diff --git a/src/kiss/FieldForms.hx b/src/kiss/FieldForms.hx index 21eba5f..45213a0 100644 --- a/src/kiss/FieldForms.hx +++ b/src/kiss/FieldForms.hx @@ -41,6 +41,9 @@ class FieldForms { case MetaExp("mut", nameExp): access.remove(AFinal); fieldAccess(formName, fieldName, nameExp, access); + case MetaExp("dynamic", nameExp): + access.push(ADynamic); + fieldAccess(formName, fieldName, nameExp, access); default: if (formName == "defvar" || formName == "defun") { access.push(AStatic); diff --git a/src/kiss/Helpers.hx b/src/kiss/Helpers.hx index 5cb497c..d2f2a35 100644 --- a/src/kiss/Helpers.hx +++ b/src/kiss/Helpers.hx @@ -59,6 +59,13 @@ class Helpers { // TODO generic type parameter declarations public static function makeFunction(?name:ReaderExp, argList:ReaderExp, body:List, k:KissState):Function { + if (name != null) { + switch (name.def) { + case MetaExp(_, name): + return makeFunction(name, argList, body, k); + default: + } + } var funcName = if (name != null) { switch (name.def) { case Symbol(name) | TypedExp(_, {pos: _, def: Symbol(name)}):