 the same expression has to
      carry different values simultaneously -
      when multiple instances of the same function are evaluated as part of the
      same full-expression without specifying the default arguments.
      Even simply calling the function twice (not necessarily within the
      same full-expression) may lead to program points agglutinating because
      it's the same expression. There are some nasty test cases already
      in temporaries.cpp (struct DefaultParam and so on). I recomme