[all-commits] [llvm/llvm-project] a27c41: [scudo] Change overloaded function name append.

Christopher Ferris via All-commits all-commits at lists.llvm.org
Wed Jun 21 15:12:07 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a27c416b89249c1c4c5f47db45d1be690eb928df
      https://github.com/llvm/llvm-project/commit/a27c416b89249c1c4c5f47db45d1be690eb928df
  Author: Christopher Ferris <cferris at google.com>
  Date:   2023-06-21 (Wed, 21 Jun 2023)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/report.cpp
    M compiler-rt/lib/scudo/standalone/string_utils.cpp
    M compiler-rt/lib/scudo/standalone/string_utils.h

  Log Message:
  -----------
  [scudo] Change overloaded function name append.

The ScopedString class has two functions named append. One takes
a va_list, but on some platforms va_list is typedef'd to char*.
That means that this call:

  std::string value;
  Str.append("print this string %s", value.c_str());

The compiler can incorrectly think this is the va_list function,
leading to crashes when calling this. To fix this, change the name
of the va_list function to be vappend to avoid this.

Fix https://github.com/llvm/llvm-project/issues/62893

Reviewed By: Chia-hungDuan

Differential Revision: https://reviews.llvm.org/D153389




More information about the All-commits mailing list