code: def fail_stop(self):
          
          T = self.tm.trace
          if T: T.write(self.trace_message('Task.failed_stop()', self.node))
  
          # Invoke will_not_build() to clean-up the pending children
          # list.
          self.tm.will_not_build(self.targets, lambda n: n.set_state(NODE_FAILED))
  
          # Tell the taskmaster to not start any new tasks
          self.tm.stop()
  
          # We're stopping because of a build failure, but give the
          # calling Task class a chance to postprocess() the top-level
          # target under which the build failure occurred.
          self.targets = [self.tm.current_top]
          self.top = 1
docs: Explicit stop-the-build failure.
  
          This sets failure status on the target nodes and all of
          their dependent parent nodes.
  
          Note: Although this function is normally invoked on nodes in
          the executing state, it might also be invoked on up-to-date
          nodes when using Configure().