dominicm00 / ham

A meaty Jam build tool replacement

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Optional arguments are retained in recursive calls

dominicm00 opened this issue · comments

As a compatibility behavior, Ham inherits from the previous local variable block on function calls. However, since this includes function arguments, recursive calls with optional arguments will not be unset:

rule Optional x : opt {
  if $(opt) {
    # This recursive call sees the value in opt
    Optional x ;
  }
}

Function calls should explicitly unset unpassed arguments.