Date: Mon, 11 Oct 2004 00:19:44 +0200 From: Aurelien Nephtali <aurelien.nephtali@wanadoo.fr> To: current@freebsd.org Subject: ld incorrect behaviour (broken?) Message-ID: <20041010221944.GA29852@nebula.wanadoo.fr>
next in thread | raw e-mail | index | archive | help
Hi, I've noticed that the behaviour of 'ld' has changed from v 2.12.1 (included in FreeBSD 4.10-PRERELEASE) and the v 2.15 actually used: nebula% cat tmp.c #include <stdlib.h> int main(void) { malloc(2); return (0); } Using ld 2.12.1 --------------- nebula% gcc -o tmp tmp.c nebula% readelf -a tmp | grep malloc 080496f0 00000207 R_386_JUMP_SLOT 080483bc malloc 2: 080483bc 41 FUNC GLOBAL DEFAULT UND malloc 52: 080483bc 41 FUNC GLOBAL DEFAULT UND malloc Using ld 2.15 ------------- nebula% gcc -o tmp tmp.c nebula% readelf -a tmp | grep malloc 080496f0 00000207 R_386_JUMP_SLOT 00000000 malloc 2: 00000000 41 FUNC GLOBAL DEFAULT UND malloc 52: 00000000 41 FUNC GLOBAL DEFAULT UND malloc The address '080483bc' is now '0' and that breaks all of my tools that need to use this field. Is there a reason for that field to be '0' now ? Thanks. -- NEPHTALI 'dak' Aurelien
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20041010221944.GA29852>