docs: def build_string(self):
          """
          Taskcluster denotes builds in one of two formats - i.e. linux64-asan or linux64-asan-opt
          The latter is generated. If it fails, the caller should try the former.
          """
          return (('-ccov' if self.coverage else '') +
                  ('-fuzzing' if self.fuzzing else '') +
                  ('-asan' if self.asan else '') +
                  ('-valgrind' if self.valgrind else '') +
                  ('-debug' if self.debug else '-opt'))