footest.d:
import std;
import foo;
void main ()
{
foo.foo;
}
foo.c
// #define __const const
#include <stdio.h>
void foo ()
{
puts ("foo");
}
$ dmd -i footest
/usr/include/libio.h(372): Error: illegal combination of type specifiers
/usr/include/stdio.h(157): Error: illegal combination of type specifiers
[more of these]
libio.h
372 typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
373 size_t __n);
Compiles if __const
is #define
d as const
.
resembles https://issues.dlang.org/show_bug.cgi?id=24156 and others. This is not a regression in DMD 2.111 and also occurs in DMD 2.101.