Subject: bug#25803: ./configure CFLAGS=-ggdb3 fails 'guile-snarf'

From: Sergei Trofimovich <[email-masked]>
Date: Sun, 19 Feb 2017 22:36:39 +0000

It popped out as a
    https://bugs.gentoo.org/show_bug.cgi?id=608190
where one of packages failed to build with CFLAGS=-ggdb3 was guile-2.0.13

guile git master is also affected:

    $ ./configure CFLAGS=-ggdb3
    $ make
    make[1]: Entering directory '/home/slyfox/dev/git/guile/libguile'
      CC       libguile_2.2_la-alist.lo
    In file included from alist.c:398:0:
    ../libguile/alist.x: In function 'scm_init_alist':
    ../libguile/alist.x:2:2537: error: conflicting types for 'scm_i_foreign_call'

The problem here is in gcc -ggdb3 which leaves too much
of unrelated input. guile-snarf does not understand how to drop it:

guile/libguile $ guile-snarf alist.c -DHAVE_CONFIG_H -DBUILDING_LIBGUILE=1 -I.. -I.. -I../lib -I../lib -I/usr/lib64/libffi-3.2.1/include -I/home/slyfox/dev/git/guile -ggdb2 | wc -c
1389
guile/libguile $ guile-snarf alist.c -DHAVE_CONFIG_H -DBUILDING_LIBGUILE=1 -I.. -I.. -I../lib -I../lib -I/usr/lib64/libffi-3.2.1/include -I/home/slyfox/dev/git/guile -ggdb3 | wc -c
230085

Fails on both gcc-5.4.0 / gcc-6.3.0

-- 

  Sergei