binutils-gdb/libctf
Nick Alcock d04a47ac53 libctf: create: ctf_add_type should hand back already-added non-SoUs
When we add a type from a dictionary and then try to add it again, we
should hand it back unchanged unless it is a structure, union or enum
with a different number of members.  That's what the comment says we do.

Instead, we hand it back unchanged *only* if it is a structure, union or
enum with the same number of members: non-structs, unions and enums are
unconditionally added.  This causes extreme type bloating and (in
conjunction with the bug fixed by the next commit) can easily lead to
the same type being mistakenly added to a dictionary more than once
(which, for forwards, was not banned and led to dictionary corruption).

libctf/
	* ctf-create.c (ctf_add_type_internal): Hand back existing types
	unchanged.
2020-06-26 15:56:39 +01:00
..
aclocal.m4 Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ChangeLog libctf: create: ctf_add_type should hand back already-added non-SoUs 2020-06-26 15:56:39 +01:00
config.h.in libctf: Add configure check for asprintf (for MinGW) 2020-01-05 09:50:27 +04:00
configure libctf: Add configure check for asprintf (for MinGW) 2020-01-05 09:50:27 +04:00
configure.ac libctf: Add configure check for asprintf (for MinGW) 2020-01-05 09:50:27 +04:00
ctf-archive.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-create.c libctf: create: ctf_add_type should hand back already-added non-SoUs 2020-06-26 15:56:39 +01:00
ctf-decl.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-decls.h Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-dump.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-endian.h Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-error.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-hash.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-impl.h libctf: create: non-root-visible types should not appear in name tables 2020-06-26 15:56:39 +01:00
ctf-labels.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-link.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-lookup.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-open-bfd.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-open.c libctf: create: non-root-visible types should not appear in name tables 2020-06-26 15:56:39 +01:00
ctf-qsort_r.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-string.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-subr.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-types.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
ctf-util.c Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
elf.h Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
libctf.ver Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
Makefile.am Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
Makefile.in Update year range in copyright notice of binutils files 2020-01-01 18:42:54 +10:30
swap.h libctf: Mark bswap_identity_64 inline function as static. 2020-03-11 17:48:49 +10:30