Fix ODR violation in d/runtime.cc

gcc/d/ChangeLog:

	PR d/90893
	* runtime.cc (enum libcall_type): Rename to...
	(enum d_libcall_type): ...this.
	(get_libcall_type): Use d_libcall_type.
	(build_libcall_decl): Likewise.

From-SVN: r274249
This commit is contained in:
Iain Buclaw 2019-08-10 05:25:44 +00:00 committed by Iain Buclaw
parent 8fa64062ad
commit 7403925388
2 changed files with 12 additions and 4 deletions

View file

@ -1,3 +1,11 @@
2019-08-10 Iain Buclaw <ibuclaw@gdcproject.org>
PR d/90893
* runtime.cc (enum libcall_type): Rename to...
(enum d_libcall_type): ...this.
(get_libcall_type): Use d_libcall_type.
(build_libcall_decl): Likewise.
2019-06-16 Iain Buclaw <ibuclaw@gdcproject.org>
PR d/90559

View file

@ -34,7 +34,7 @@ along with GCC; see the file COPYING3. If not see
We represent them in the frontend here, however there's no guarantee that
the compiler implementation actually matches the actual implementation. */
enum libcall_type
enum d_libcall_type
{
LCT_VOID, /* void */
LCT_BYTE, /* byte */
@ -81,7 +81,7 @@ static tree libcall_decls[LIBCALL_LAST];
arrayOf() will return cached types if they have been requested before. */
static Type *
get_libcall_type (libcall_type type)
get_libcall_type (d_libcall_type type)
{
if (libcall_types[type])
return libcall_types[type];
@ -212,7 +212,7 @@ get_libcall_type (libcall_type type)
the number of arguments, the types of which are provided in `...'. */
static tree
build_libcall_decl (const char *name, libcall_type return_type,
build_libcall_decl (const char *name, d_libcall_type return_type,
int flags, int nparams, ...)
{
tree *args = XALLOCAVEC (tree, nparams);
@ -226,7 +226,7 @@ build_libcall_decl (const char *name, libcall_type return_type,
for (int i = 0; i < nparams; i++)
{
libcall_type ptype = (libcall_type) va_arg (ap, int);
d_libcall_type ptype = (d_libcall_type) va_arg (ap, int);
Type *type = get_libcall_type (ptype);
if (type == Type::tvoid)