//
// Copyright 2022 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// osx_backtrace.cpp:
//   Implements functions to output the backtrace from the ANGLE code during execution on OSX.
//

#include "common/backtrace_utils.h"

namespace angle
{

// It is possible to refactor the implementation of printing the backtrace information from the
// PrintStackBacktrace() function.
void printBacktraceInfo(BacktraceInfo backtraceInfo) {}

}  // namespace angle
