forked from Imagelibrary/binutils-gdb
gold: Use char16_t, char32_t instead of uint16_t, uint32_t as character types
The std::basic_string template type is only specified for instantiations using character types. Newer (LLVM) libc++ implementations no longer allow non-character integer types to be used. gold/ * output.cc: Include <uchar.h>. (Output_section::add_merge_input_section): Use char16_t and char32_t for 2- and 4-byte entry size, respectively. * stringpool.cc: Include <uchar.h>. (Stringpool_template): Explicitly instantiate for char16_t, char32_t instead of uint16_t, uint32_t. * merge.cc (Output_merge_string): Likewise.
This commit is contained in:
@@ -25,6 +25,7 @@
|
||||
#include <cstring>
|
||||
#include <algorithm>
|
||||
#include <vector>
|
||||
#include <uchar.h>
|
||||
|
||||
#include "output.h"
|
||||
#include "parameters.h"
|
||||
@@ -527,9 +528,9 @@ template
|
||||
class Stringpool_template<char>;
|
||||
|
||||
template
|
||||
class Stringpool_template<uint16_t>;
|
||||
class Stringpool_template<char16_t>;
|
||||
|
||||
template
|
||||
class Stringpool_template<uint32_t>;
|
||||
class Stringpool_template<char32_t>;
|
||||
|
||||
} // End namespace gold.
|
||||
|
||||
Reference in New Issue
Block a user