17389830 guile fails to build with gcc4.7
17531161 greenlet doesn't build with gcc 4.7.X
17967710 Update various Userland components to use gcc4 rather than gcc3
gcc 4.7 breaks guile 1.8.6
Upstream bug is: http://savannah.gnu.org/bugs/?29583
bug #29583: gcc 4.5 breaks guile 1.8.7
fix doc snarfing with fedora 12
* module/scripts/snarf-check-and-output-texi.scm
(process-multiline-directive): Be more accepting of source location
markers in the preprocessed source, by adding a couple cases in which
they can appear. Not foolproof, but it does adapt to what new GCCs are
putting out (e.g. cpp (GCC) 4.4.2 20091222 (Red Hat 4.4.2-20)).
--- guile-1.8.4/scripts/snarf-check-and-output-texi.orig 2013-12-17 08:05:14.466575700 -0800
+++ guile-1.8.4/scripts/snarf-check-and-output-texi 2013-12-17 08:06:34.623311834 -0800
@@ -267,6 +267,17 @@
(set! *file* file)
(set! *line* line))
+ ;; newer gccs like to throw around more location markers into the
+ ;; preprocessed source; these (hash . hash) bits are what they translate to
+ ;; in snarfy terms.
+ (('location ('string . file) ('int . line) ('hash . 'hash))
+ (set! *file* file)
+ (set! *line* line))
+
+ (('location ('hash . 'hash) ('string . file) ('int . line) ('hash . 'hash))
+ (set! *file* file)
+ (set! *line* line))
+
(('arglist rest ...)
(set! *args* (do-arglist rest)))