April 04

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 #defined 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.