summaryrefslogtreecommitdiff
path: root/libiberty
diff options
context:
space:
mode:
Diffstat (limited to 'libiberty')
-rw-r--r--libiberty/ChangeLog17
-rw-r--r--libiberty/Makefile.in16
-rw-r--r--libiberty/cp-demangle.c11
3 files changed, 33 insertions, 11 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 6a93998e244..559f0c97341 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,16 @@
+2011-11-04 Jason Merrill <jason@redhat.com>
+
+ PR c++/48370
+ * cp-demangle.c (d_special_name, d_print_comp): Handle a
+ discriminator number on DEMANGLE_COMPONENT_REFTEMP.
+
+2011-11-02 Doug Evans <dje@google.com>
+
+ * Makefile.in (CFILES): Add timeval-utils.c.
+ (REQUIRED_OFILES): Add timeval-utils.$(objext).
+ (INSTALLED_HEADERS): Add timeval-utils.h.
+ (timeval-utils.$(objext)): Add rule.
+
2011-10-28 Ian Lance Taylor <iant@google.com>
* setproctitle.c (setproctitle): Use "GNU/Linux" in comment.
@@ -25,10 +38,6 @@
2011-09-28 Doug Evans <dje@google.com>
* timeval-utils.c: New file.
- * Makefile.in (CFILES): Add it.
- (REQUIRED_OFILES): Add timeval-utils.$(objext).
- (INSTALLED_HEADERS): Add timeval-utils.h.
- (timeval-utils.$(objext)): Add rule.
* argv.c (countargv): New function.
diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index bcd03fd0167..5280bc1585c 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -152,7 +152,7 @@ CFILES = alloca.c argv.c asprintf.c atexit.c \
strcasecmp.c strchr.c strdup.c strerror.c strncasecmp.c \
strncmp.c strrchr.c strsignal.c strstr.c strtod.c strtol.c \
strtoul.c strndup.c strverscmp.c \
- tmpnam.c \
+ timeval-utils.c tmpnam.c \
unlink-if-ordinary.c \
vasprintf.c vfork.c vfprintf.c vprintf.c vsnprintf.c vsprintf.c \
waitpid.c \
@@ -184,8 +184,8 @@ REQUIRED_OFILES = \
./simple-object-elf.$(objext) ./simple-object-mach-o.$(objext) \
./sort.$(objext) ./spaces.$(objext) \
./splay-tree.$(objext) ./stack-limit.$(objext) \
- ./strerror.$(objext) \
- ./strsignal.$(objext) ./unlink-if-ordinary.$(objext) \
+ ./strerror.$(objext) ./strsignal.$(objext) \
+ ./timeval-utils.$(objext) ./unlink-if-ordinary.$(objext) \
./xatexit.$(objext) ./xexit.$(objext) ./xmalloc.$(objext) \
./xmemdup.$(objext) ./xstrdup.$(objext) ./xstrerror.$(objext) \
./xstrndup.$(objext)
@@ -235,7 +235,8 @@ INSTALLED_HEADERS = \
$(INCDIR)/partition.h \
$(INCDIR)/safe-ctype.h \
$(INCDIR)/sort.h \
- $(INCDIR)/splay-tree.h
+ $(INCDIR)/splay-tree.h \
+ $(INCDIR)/timeval-utils.h
$(TARGETLIB): $(REQUIRED_OFILES) $(EXTRA_OFILES) $(LIBOBJS)
-rm -f $(TARGETLIB) pic/$(TARGETLIB)
@@ -1141,6 +1142,13 @@ $(CONFIGURED_OFILES): stamp-picdir
else true; fi
$(COMPILE.c) $(srcdir)/strverscmp.c $(OUTPUT_OPTION)
+./timeval-utils.$(objext): $(srcdir)/timeval-utils.c config.h \
+ $(INCDIR)/timeval-utils.h
+ if [ x"$(PICFLAG)" != x ]; then \
+ $(COMPILE.c) $(PICFLAG) $(srcdir)/timeval-utils.c -o pic/$@; \
+ else true; fi
+ $(COMPILE.c) $(srcdir)/timeval-utils.c $(OUTPUT_OPTION)
+
./tmpnam.$(objext): $(srcdir)/tmpnam.c
if [ x"$(PICFLAG)" != x ]; then \
$(COMPILE.c) $(PICFLAG) $(srcdir)/tmpnam.c -o pic/$@; \
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index 08391088467..0f1166be48c 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -1856,8 +1856,11 @@ d_special_name (struct d_info *di)
return d_make_comp (di, DEMANGLE_COMPONENT_GUARD, d_name (di), NULL);
case 'R':
- return d_make_comp (di, DEMANGLE_COMPONENT_REFTEMP, d_name (di),
- NULL);
+ {
+ struct demangle_component *name = d_name (di);
+ return d_make_comp (di, DEMANGLE_COMPONENT_REFTEMP, name,
+ d_number_component (di));
+ }
case 'A':
return d_make_comp (di, DEMANGLE_COMPONENT_HIDDEN_ALIAS,
@@ -3954,7 +3957,9 @@ d_print_comp (struct d_print_info *dpi, int options,
return;
case DEMANGLE_COMPONENT_REFTEMP:
- d_append_string (dpi, "reference temporary for ");
+ d_append_string (dpi, "reference temporary #");
+ d_print_comp (dpi, options, d_right (dc));
+ d_append_string (dpi, " for ");
d_print_comp (dpi, options, d_left (dc));
return;