OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
| 5 #include <stddef.h> |
5 #include <unistd.h> | 6 #include <unistd.h> |
6 | 7 |
7 // LLVM's demangler is large, and we have no need of it. Overriding it with | 8 // LLVM's demangler is large, and we have no need of it. Overriding it with |
8 // our own stub version here stops a lot of code being pulled in from libc++. | 9 // our own stub version here stops a lot of code being pulled in from libc++. |
9 // More here: | 10 // More here: |
10 // https://llvm.org/svn/llvm-project/libcxxabi/trunk/src/cxa_demangle.cpp | 11 // https://llvm.org/svn/llvm-project/libcxxabi/trunk/src/cxa_demangle.cpp |
11 extern "C" char* __cxa_demangle(const char* mangled_name, | 12 extern "C" char* __cxa_demangle(const char* mangled_name, |
12 char* buf, | 13 char* buf, |
13 size_t* n, | 14 size_t* n, |
14 int* status) { | 15 int* status) { |
15 static const int kMemoryAllocFailure = -1; // LLVM's memory_alloc_failure. | 16 static const int kMemoryAllocFailure = -1; // LLVM's memory_alloc_failure. |
16 if (status) | 17 if (status) |
17 *status = kMemoryAllocFailure; | 18 *status = kMemoryAllocFailure; |
18 return nullptr; | 19 return nullptr; |
19 } | 20 } |
OLD | NEW |