Belated attempt at downstreaming libiberty changes from upstream. Split it into two patches, one with dlang related changes, the other with everything else. As requested, commits have been replayed ontop of gdb rather than a straight diff between the directories. Regards Iain ---