message: Logging functions modification
diff: @@ -212,6 +212,9 @@ def implicit_val_and_grad(f):
  if not variables:
  raise ValueError("No trainable variables were accessed while the "
  "function was being computed.")
  + for v in variables:
  + if not is_floating(v):
  + raise ValueError("Gradient Calculations support only float types.")
  sources = [v.handle for v in variables]
  grad = imperative_grad.imperative_grad(this_tape, nest.flatten(end_node),
  @@ -923,6 +926,10 @@ class GradientTape(object):
  if self._tape is None:
  raise RuntimeError("GradientTape.gradient can only be called once on "
  "non-persistent tapes.")
  + if not is_floating(self._tape):
  + raise ValueError("GradientTape.gradient can only be called when "
  + "data type is float.")
  +
  if self._recording:
  if not self._persistent:
  self._pop_tape()
  