Correct previous fix for an absence of input files on the ar command line, so that...
[external/binutils.git] / binutils / ChangeLog
1 2017-07-17  Nick Clifton  <nickc@redhat.com>
2
3         PR 21433
4         * ar.c (main): Skip check for no files on the command line when
5         running in MRI mode.
6
7 2017-07-13  H.J. Lu  <hongjiu.lu@intel.com>
8
9         * testsuite/binutils-all/objdump.exp: Always delete $testarchive
10         first.
11
12 2017-07-12  Alan Modra  <amodra@gmail.com>
13
14         * po/bg.po: Update from translationproject.org/latest/binutils/.
15         * po/ca.po: Likewise.
16         * po/da.po: Likewise.
17         * po/es.po: Likewise.
18         * po/fi.po: Likewise.
19         * po/fr.po: Likewise.
20         * po/hr.po: Likewise.
21         * po/id.po: Likewise.
22         * po/it.po: Likewise.
23         * po/ja.po: Likewise.
24         * po/ro.po: Likewise.
25         * po/ru.po: Likewise.
26         * po/sk.po: Likewise.
27         * po/sr.po: Likewise.
28         * po/sv.po: Likewise.
29         * po/tr.po: Likewise.
30         * po/uk.po: Likewise.
31         * po/vi.po: Likewise.
32         * po/zh_CN.po: Likewise.
33         * po/zh_TW.po: Likewise.
34
35 2017-07-12  Nick Clifton  <nickc@redhat.com>
36
37         Fix compile time warnings using gcc 7.1.1.
38         * dwarf.c (dwarf_vmatoa_1): Do not pass a NULL string pointer to
39         sprintf.
40         * srconv.c (walk_tree_type): Initialise the spare field of the
41         IT_dty structure.
42
43 2017-07-11  Andreas Schwab  <schwab@suse.de>
44
45         * readelf.c (process_note): Print newline after description data
46         in narrow mode.
47         (print_core_note): Print newline if nothing was printed in wide
48         mode.
49
50 2017-07-09  Rafael Fontenelle <rafaelff@gnome.org>
51
52         * dwarf.c (display_formatted_table): Fix error message typo.
53
54 2017-07-07  John Baldwin  <jhb@FreeBSD.org>
55
56         * readelf.c (get_freebsd_elfcore_note_type): Handle
57         NT_FREEBSD_PTLWPINFO.
58
59 2017-07-05  H.J. Lu  <hongjiu.lu@intel.com>
60
61         * dwarf.c (display_debug_names): Replace index with xindex.
62
63 2017-07-04  Tristan Gingold  <gingold@adacore.com>
64
65         * configure: Regenerate.
66
67 2017-07-04  Tristan Gingold  <gingold@adacore.com>
68
69         * NEWS: Add marker for 2.29.
70
71 2017-07-03  Tristan Gingold  <gingold@adacore.com>
72
73         * po/binutils.pot: Regenerate.
74
75 2017-07-03  Alan Modra  <amodra@gmail.com>
76
77         * strings.c (filename_and_size_t): Delete.
78         (strings_a_section): Don't check section size against file size.
79         Use bdf_malloc_and_get_section.  Report an error on failures.
80         Replace arg param with filename and got_a_section param.
81         (got_a_section): Move to..
82         (strings_object_file): ..an auto var here.  Iterate over sections
83         rather than calling bfd_map_over_sections.  Adjust strings_a_section
84         call.
85
86 2017-07-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
87
88         * dwarf.c: Include assert.h.
89         (MAX, MIN, get_IDX_name, display_debug_names): New.
90         (debug_displays): Add .debug_names.
91         * dwarf.h: (enum dwarf_section_display_enum): Add debug_names.
92         * readelf.c (process_section_headers): Add ".debug_names".
93
94 2017-07-01  Alan Modra  <amodra@gmail.com>
95
96         PR binutils/21665
97         * objdump.c (strtab): Make var a bfd_byte*.
98         (disassemble_section): Don't limit malloc size.  Instead, use
99         bfd_malloc_and_get_section.
100         (read_section_stabs): Use bfd_malloc_and_get_section.  Return
101         bfd_byte*.
102         (find_stabs_section): Remove now unnecessary cast.
103         * objcopy.c (copy_object): Use bfd_malloc_and_get_section.  Free
104         contents on error return.
105         * nlmconv.c (copy_sections): Use bfd_malloc_and_get_section.
106
107 2017-06-30  Nick Clifton  <nickc@redhat.com>
108
109         PR binutils/21665
110         * objdump.c (disassemble_section): Move check for an overlarge
111         section to just before the allocation of memory.  Do not check
112         section size against file size, but instead use an arbitrary 2Gb
113         limit.  Issue a warning message if the section is too big.
114
115 2017-06-30  Maciej W. Rozycki  <macro@imgtec.com>
116
117         * NEWS: Mention microMIPS XPA support.
118
119 2017-06-30  Maciej W. Rozycki  <macro@imgtec.com>
120
121         * NEWS: Mention microMIPS Release 5 ISA support.
122
123 2017-06-30  Maciej W. Rozycki  <macro@imgtec.com>
124
125         * testsuite/binutils-all/mips/mips-xpa-virt-1.d: New test.
126         * testsuite/binutils-all/mips/mips-xpa-virt-2.d: New test.
127         * testsuite/binutils-all/mips/mips-xpa-virt-3.d: New test.
128         * testsuite/binutils-all/mips/mips-xpa-virt-4.d: New test.
129         * testsuite/binutils-all/mips/mips-xpa-virt.s: New test source.
130         * testsuite/binutils-all/mips/mips.exp: Run the new tests.
131
132 2017-06-29  Anton Kolesov  <Anton.Kolesov@synopsys.com>
133
134         * testsuite/binutils-all/arc/double_store.s: New file.
135         * testsuite/binutils-all/arc/objdump.exp: Tests for disassembler
136         options.
137         (do_objfile): New function.
138         (check_assembly): Likewise.
139
140 2017-06-29  Andreas Arnez  <arnez@linux.vnet.ibm.com>
141
142         * readelf.c (get_note_type): Add NT_S390_GS_CB and NT_S390_GS_BC.
143
144 2017-06-28  H.J. Lu  <hongjiu.lu@intel.com>
145
146         * objdump.c (dump_relocs_in_section): Cast to ufile_ptr when
147         comparing against bfd_get_file_size return.
148
149 2017-06-28  Nick Clifton  <nickc@redhat.com>
150
151         * objcopy.c (merge_gnu_build_notes): Add support for version 2 notes.
152         * readelf.c (print_gnu_build_attribute_name): Likewise.
153
154 2017-06-28  Maciej W. Rozycki  <macro@imgtec.com>
155             Matthew Fortune  <matthew.fortune@imgtec.com>
156
157         * readelf.c (get_machine_flags) <E_MIPS_MACH_IAMR2>: New case.
158         (print_mips_isa_ext) <AFL_EXT_INTERAPTIV_MR2>: Likewise.
159         * NEWS: Mention Imagination interAptiv MR2 processor support.
160
161 2017-06-26  Nick Clifton  <nickc@redhat.com>
162
163         PR binutils/21665
164         * objdump.c (disassemble_section): Skip any section that is bigger
165         than the entire file.
166
167 2017-06-26  Nick Clifton  <nickc@redhat.com>
168
169         PR binutils/21659
170         * bucomm.c (get_file_size): Explicitly warn if the file is a
171         directory.
172
173 2017-06-24  Thomas Preud'homme  <thomas.preudhomme@arm.com>
174
175         * readelf.c (arm_attr_tag_CPU_arch): Fill value for ARMv8-R.
176
177 2017-06-23  Nick Clifton  <nickc@redhat.com>
178
179         PR binutils/21659
180         * strings.c (strings_file): Warn about attempts to run strings on
181         a directory.
182
183 2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
184
185         * readelf.c (decode_x86_feature): Decode
186         GNU_PROPERTY_X86_FEATURE_1_SHSTK.
187         * testsuite/binutils-all/i386/shstk.d: New file.
188         * testsuite/binutils-all/i386/shstk.s: Likewise.
189         * testsuite/binutils-all/x86-64/shstk-x32.d: Likewise.
190         * testsuite/binutils-all/x86-64/shstk.d: Likewise.
191         * testsuite/binutils-all/x86-64/shstk.s: Likewise.
192
193 2017-06-22  H.J. Lu  <hongjiu.lu@intel.com>
194
195         * readelf.c (decode_x86_feature): New.
196         (print_gnu_property_note): Call decode_x86_feature on
197         GNU_PROPERTY_X86_FEATURE_1_AND.
198         * testsuite/binutils-all/i386/empty.d: New file.
199         * testsuite/binutils-all/i386/empty.s: Likewise.
200         * testsuite/binutils-all/i386/ibt.d: Likewise.
201         * testsuite/binutils-all/i386/ibt.s: Likewise.
202         * testsuite/binutils-all/x86-64/empty-x32.d: Likewise.
203         * testsuite/binutils-all/x86-64/empty.d: Likewise.
204         * testsuite/binutils-all/x86-64/empty.s: Likewise.
205         * testsuite/binutils-all/x86-64/ibt-x32.d: Likewise.
206         * testsuite/binutils-all/x86-64/ibt.d: Likewise.
207         * testsuite/binutils-all/x86-64/ibt.s: Likewise.
208
209 2017-06-21  H.J. Lu  <hongjiu.lu@intel.com>
210
211         * dwarf.c (READ_ULEB): Use DWARF_VMA_FMT to report error.
212         (READ_SLEB): Likewise.
213
214 2017-06-21  Nick Clifton  <nickc@redhat.com>
215
216         PR binutils/21648
217         * dwarf.c (LEB): Rename to SKIP_ULEB and READ_ULEB.  Add check for
218         reading a value that is too big for the containing variable.
219         (SLEB): Rename to SKIP_SLEB and READ_SLEB.  Add similar check.
220         Replace uses of LEB and SLEB with appropriate new macro.
221         (display_debug_frames): Use an unsigned int for the 'reg'
222         variable.  Use a signed long for the 'l' variable.
223
224 2017-06-20  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
225
226         * readelf.c (get_s390_segment_type): Add support for the new
227         segment type PT_S390_PGSTE.
228         (get_segment_type): Call get_s390_segment_type.
229
230 2017-06-19  Nick Clifton  <nickc@redhat.com>
231
232         PR binutils/21619
233         * objdump.c (disassemble_bytes): Check that there is sufficient
234         data available before attempting to display it.
235
236 2017-06-06  Simon Marchi  <simon.marchi@ericsson.com>
237
238         * sysinfo.y: Free memory allocated by token NAME.
239
240 2017-05-30  Anton Kolesov  <anton.kolesov@synopsys.com>
241
242         * doc/binutils.texi: Document new cpu=... disassembler options for ARC.
243
244 2017-05-30  H.J. Lu  <hongjiu.lu@intel.com>
245
246         PR binutils/21519
247         * objdump.c (dump_relocs_in_section): Replace get_file_size
248         with bfd_get_file_size to get archive element size.
249         * testsuite/binutils-all/objdump.exp (test_objdump_f): New
250         proc.
251         (test_objdump_h): Likewise.
252         (test_objdump_t): Likewise.
253         (test_objdump_r): Likewise.
254         (test_objdump_s): Likewise.
255         Add objdump tests on archive.
256
257 2017-05-24  Yao Qi  <yao.qi@linaro.org>
258
259         * objdump.c (disassemble_data): Caller update.
260
261 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
262
263         * objcopy.c (merge_gnu_build_notes): Remove workaround that
264         prevented deleting relocations in duplicated notes in mips64 and
265         sparc.
266
267 2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
268
269         * testsuite/binutils-all/mips/mips-note-2.d: New test.
270         * testsuite/binutils-all/mips/mips-note-2r.d: New test.
271         * testsuite/binutils-all/mips/mips-note-2-n32.d: New test.
272         * testsuite/binutils-all/mips/mips-note-2-n64.d: New test.
273         * testsuite/binutils-all/mips/mips-note-2r-n32.d: New test.
274         * testsuite/binutils-all/mips/mips-note-2r-n64.d: New test.
275         * testsuite/binutils-all/mips/mips.exp: Define `has_newabi'.
276         Run the new tests.
277
278 2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
279
280         * testsuite/lib/utils-lib.exp (run_dump_test): Handle the `dump'
281         option.
282
283 2017-05-19  Jose E. Marchesi  <jose.marchesi@oracle.com>
284
285         * NEWS: Mention the SPARC M8 support.
286
287 2017-05-19  Maciej W. Rozycki  <macro@imgtec.com>
288
289         * testsuite/binutils-all/mips/mips.exp: Bail out right away if
290         non-ELF.
291
292 2017-05-18  Alan Modra  <amodra@gmail.com>
293
294         * strings.c: Don't compare boolean values against TRUE or FALSE.
295
296 2017-05-15  Jeff Law  <law@redhat.com>
297
298         * readelf.c (display_arc_attribute): Avoid implicit fallthru.
299
300 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
301
302         * testsuite/binutils-all/mips/mips16-undecoded.d: Add `-mips3'
303         to `as' flags.
304         * testsuite/binutils-all/mips/mips16e2-undecoded.d: New test.
305         * testsuite/binutils-all/mips/mips16e2-extend-insn.d: New test.
306         * testsuite/binutils-all/mips/mips16-undecoded.s: Remove
307         `.module mips3'.
308         * testsuite/binutils-all/mips/mips.exp: Run the new tests.
309
310 2017-05-15  Maciej W. Rozycki  <macro@imgtec.com>
311
312         * readelf.c (print_mips_ases): Handle MIPS16e2 ASE.
313         * NEWS: Mention MIPS16e2 ASE support.
314
315 2017-05-12  Maciej W. Rozycki  <macro@imgtec.com>
316
317         * testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK
318         and SDBBP disassembly.
319
320 2017-05-10  Maciej W. Rozycki  <macro@imgtec.com>
321
322         * testsuite/binutils-all/mips/mips.exp: Define `tempfile' and
323         `copyfile' variables.
324
325 2017-05-10  Claudiu Zissulescu  <claziss@synopsys.com>
326
327         * readelf.c (decode_ARC_machine_flags): Recognize OSABI v4.
328         (get_arc_section_type_name): New function.
329         (get_section_type_name): Use the above function.
330         (display_arc_attribute): New function.
331         (process_arc_specific): Likewise.
332         (process_arch_specific): Handle ARC specific information.
333
334 2017-05-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
335
336         * MAINTAINERS (SH): Remove myself as SH maintainer.
337
338 2017-05-02  H.J. Lu  <hongjiu.lu@intel.com>
339
340         * objcopy.c (merge_gnu_build_notes): Cast relcount to unsigned
341         long when comparing with sec->reloc_count.
342
343 2017-05-02  Nick Clifton  <nickc@redhat.com>
344
345         * objcopy.c (merge_gnu_build_notes): Disable merge if there are
346         more internal relocs than external relocs.
347
348 2017-05-02  Maciej W. Rozycki  <macro@imgtec.com>
349
350         * testsuite/binutils-all/mips/mips16-undecoded.d: Adjust the
351         disassembly of PC-relative LA and LW synthetic instructions.
352
353 2017-05-02  Nick Clifton  <nickc@redhat.com>
354
355         PR 21440
356         * objdump.c (dump_relocs_in_section): Check for an excessive
357         number of relocs before attempting to dump them.
358
359 2017-05-01  Alan Modra  <amodra@gmail.com>
360
361         * objcopy.c (merge_gnu_build_notes): Correct code deleting
362         relocs.
363
364 2017-04-28  Nick Clifton  <nickc@redhat.com>
365
366         PR binutils/21439
367         * readelf.c (print_gnu_build_attribute_name): Allow for an empty
368         name field.
369
370 2017-04-28  Nick Clifton  <nickc@redhat.com>
371
372         PR binutils/21437
373         * readelf.c (process_version_sections): Check for underflow when
374         computing the start address of the auxillary version data.
375
376 2017-04-28  Nick Clifton  <nickc@redhat.com>
377
378         PR binutils/21438
379         * dwarf.c (process_extended_line_op): Do not assume that the
380         string extracted from the section is NUL terminated.
381         (fetch_indirect_string): If the string retrieved from the section
382         is not NUL terminated, return an error message.
383         (fetch_indirect_line_string): Likewise.
384         (fetch_indexed_string): Likewise.
385
386 2017-04-26  Nick Clifton  <nickc@redhat.com>
387
388         PR binutils/21433
389         * bucomm.c (get_file_size): Return -1 if file_name is NULL.
390         * ar.c (main): Fail with usage() invocation if no file names are
391         provided.
392
393 2017-04-26  Nick Clifton  <nickc@redhat.com>
394
395         * readelf.c (process_section_headers): Warn about overlarge
396         sections.
397         (print_gnu_build_attribute_name): Print the number of unrecognised
398         note types.  Fix formatting in the presence of errors.
399         (testsuite/binutils-all/note-2-32.s): Fix encoding of numeric notes.
400         (testsuite/binutils-all/note-2-64.s): Likewise.
401
402 2017-04-26  Maciej W. Rozycki  <macro@imgtec.com>
403
404         * readelf.c (process_mips_specific): Add static GOT support.
405
406 2017-04-25  Maciej W. Rozycki  <macro@imgtec.com>
407
408         * readelf.c (process_mips_specific): Remove error reporting from
409         GOT[1] processing.
410
411 2017-04-25  Maciej W. Rozycki  <macro@imgtec.com>
412
413         * readelf.c (process_mips_specific): Remove null GOT data check.
414
415 2017-04-25  Maciej W. Rozycki  <macro@imgtec.com>
416
417         * testsuite/binutils-all/mips/mips16-alias.d: New test.
418         * testsuite/binutils-all/mips/mips16-noalias.d: New test.
419         * testsuite/binutils-all/mips/mips16-alias.s: New test source.
420         * testsuite/binutils-all/mips/mips.exp: Run the new tests.
421
422 2017-04-23  Alan Modra  <amodra@gmail.com>
423
424         PR 21418
425         * ar.c (main): Check -a, -b, -i and -N args are given.
426
427 2017-04-23  Alan Modra  <amodra@gmail.com>
428
429         PR 21417
430         * ar.c (main): Check that an archive file is given after options.
431
432 2017-04-23  Alan Modra  <amodra@gmail.com>
433
434         PR 21415
435         * objdump.c (disassemble_section): Check bfd_get_section_contents
436         status.
437
438 2017-04-23  Alan Modra  <amodra@gmail.com>
439
440         PR 21408
441         * dwarf.c (display_debug_lines_decoded): Don't segfault on NULL
442         file_table.
443
444 2017-04-21  Nick Clifton  <nickc@redhat.com>
445
446         PR binutils/21378
447         * readelf.c (print_gnu_build_attribute_name): Check for an
448         overlarge name field.
449
450 2017-04-13  Nick Clifton  <nickc@redhat.com>
451
452         PR binutils/21379
453         * readelf.c (process_dynamic_section): Detect over large section
454         offsets in the DT_SYMTAB entry.
455
456 2017-04-13  Nick Clifton  <nickc@redhat.com>
457
458         PR binutils/21345
459         * readelf.c (process_mips_specific): Catch an unfeasible memory
460         allocation before it happens and print a suitable error message.
461
462 2017-04-13  Nick Clifton  <nickc@redhat.com>
463
464         * objcopy.c: Add --no-merge-notes option to disable note merging.
465         Add --[no-]merge-notes option to strip, and enable it by default.
466         (num_bytes): New function.
467         (merge_gnu_build_notes): Add code to merge stack size notes.
468         * binutils.texi: Update strip and objcopy documentation.
469         * readelf.c (print_gnu_build_attribute_name): Use defined
470         constants for note types.
471
472 2017-04-10  John Delsignor  <john.delsignore@roguewave.com>
473
474         PR binutils/21319
475         * dwarf.c (display_gdb_index): Correct test for a corrupt address
476         table size.
477
478 2017-04-05  Jiong Wang  <jiong.wang@arm.com>
479
480         * objcopy.c (struct redefine_node): Delete the field "next".
481         (redefine_sym_list): Deleted.
482         (redefine_specific_htab): New hash table.
483         (redefine_specific_reverse_htab): Likewise.
484         (eq_string_redefnode): New function.
485         (htab_hash_redefnode): Likewise.
486         (create_symbol2redef_htab): Likewise.
487         (add_specific_symbol_node): Likewise.
488         (create_symbol_htabs): Create redefine_specific_htab and
489         redefine_specific_reverse_htab.
490         (lookup_sym_redefinition): Use hash table instead of list.
491         (redefine_list_append): Likewise, and rename to add_redefine_and_check.
492         (copy_main): Use redefine_specific_htab instead of redefine_sym_list.
493         Update comments.
494
495 2017-04-04  H.J. Lu  <hongjiu.lu@intel.com>
496
497         * NEWS: Mention support for ELF SHF_GNU_MBIND and
498         PT_GNU_MBIND_XXX.
499         * readelf.c (get_segment_type): Handle PT_GNU_MBIND_XXX.
500         (get_elf_section_flags): Handle SHF_GNU_MBIND.
501         (process_section_headers): Likewise.
502         * testsuite/binutils-all/mbind1.s: New file.
503         * testsuite/binutils-all/objcopy.exp: Run readelf test on
504         mbind1.s.
505
506 2017-04-03  Nick Clifton  <nickc@redhat.com>
507
508         PR binutils/21345
509         * readelf.c (get_program_headers): Check for there being too many
510         program headers before attempting to allocate space for them.
511
512 2017-04-03  Nick Clifton  <nickc@redhat.com>
513
514         PR binutils/21344
515         * readelf.c (process_mips_specific): Check for an out of range GOT
516         entry before reading the module pointer.
517
518 2017-04-03  Nick Clifton  <nickc@redhat.com>
519
520         PR binutils/21343
521         * readelf.c (get_unwind_section_word): Fix snafu checking for
522         invalid word offsets in ARM unwind information.
523
524 2017-03-31  Pip Cet  <pipcet@gmail.com>
525
526         * NEWS: Use "WebAssembly" consistently.
527         * testsuite/binutils-all/wasm32/wasm32.exp: Fix copyright notice.
528
529 2017-03-30  Pip Cet  <pipcet@gmail.com>
530
531         * readelf.c: Add support for wasm32 ELF format WebAssembly files.
532         (guess_is_rela): Likewise.
533         (dump_relocations): Likewise.
534         (is_32bit_abs_reloc): Likewise.
535         (is_none_reloc_): Likewise.
536         * NEWS: Mention the new support.
537         * testsuite/lib/binutils-common.exp (is_elf_format): Mark wasm32
538         as ELF target.
539         (supports_gnu_unique): Mark wasm32 as supporting STB_GNU_UNIQUE.
540         * testsuite/binutils-all/nm.exp: Mark wasm32 as requiring .size annotations.
541         * testsuite/binutils-all/wasm32: New directory.
542         * testsuite/binutils-all/wasm32/create-wasm.d: New file.
543         * testsuite/binutils-all/wasm32/create-wasm.s: Likewise.
544         * testsuite/binutils-all/wasm32/custom-section.d: Likewise.
545         * testsuite/binutils-all/wasm32/custom-section.s: Likewise.
546         * testsuite/binutils-all/wasm32/invalid-wasm-1.d: Likewise.
547         * testsuite/binutils-all/wasm32/invalid-wasm-1.s: Likewise.
548         * testsuite/binutils-all/wasm32/long-sections.d: Likewise.
549         * testsuite/binutils-all/wasm32/long-sections.s: Likewise.
550         * testsuite/binutils-all/wasm32/parse-wasm.d: Likewise.
551         * testsuite/binutils-all/wasm32/parse-wasm.s: Likewise.
552         * testsuite/binutils-all/wasm32/parse-wasm-2.d: Likewise.
553         * testsuite/binutils-all/wasm32/parse-wasm-2.s: Likewise.
554         * testsuite/binutils-all/wasm32/prepared-section.d: Likewise.
555         * testsuite/binutils-all/wasm32/prepared-section.s: Likewise.
556         * testsuite/binutils-all/wasm32/wasm32.exp: New file, run tests.
557
558 2017-03-29  Alan Modra  <amodra@gmail.com>
559
560         * doc/binutils.texi (objdump): Document PowerPC -M options.
561
562 2017-03-21  Andi Kleen  <ak@linux.intel.com>
563
564         * objdump.c (unwind_inlines): Add.
565         (option_values): Add OPTION_INLINES.
566         (show_line): Unwind inlines if requested.
567         (main): Parse OPTION_INLINES.
568         (usage): Document --inlines.
569         * doc/binutils.texi: Document --inlines.
570         * NEWS: Likewise.
571
572 2017-03-21  Nick Clifton  <nickc@redhat.com>
573
574         * readelf.c (print_gnu_build_attribute_name): Allow stack
575         protection notes to contain numeric values.  Use a colon rather
576         than a space to separate a string name from its values.  Decode
577         the numeric value of a stack protection note.
578         * objcopy.c (merge_gnu_build_notes): Allow version notes to
579         contain extra text after the protocol version number.
580
581 2017-03-20  Mark Wielaard  <mark@klomp.org>
582
583         * readelf.c (process_program_headers): Move dynamic_addr check
584         after .dynamic section cross check.
585
586 2017-03-17  Nick Clifton  <nickc@redhat.com>
587
588         * readelf.c (print_gnu_build_attribute_name): Fix off by one error
589         printing the value for a build note with an ascii name.
590
591 2017-03-16  Nick Clifton  <nickc@redhat.com>
592
593         * readelf.c (print_gnu_build_attribute_name): Add support for
594         GNU_BUILD_ATTRIBUTE_SHORT_ENUM.
595
596 2017-03-14  Nick Clifton  <nickc@redhat.com>
597
598         * readelf.c (print_gnu_build_attribute_description): Move symbol
599         printing code to...
600         (print_symbol_for_build_attribute): New function.  ...here.
601         Add to find the best symbol to associate with an OPEN note.
602         Add code to cache the symbol table and string table, so that they
603         are not loaded every time a note is displayed.
604         * testsuite/binutils-all/note-2-32.s: Add a function symbol.
605         * testsuite/binutils-all/note-2-64.s: Likewise.
606         * testsuite/binutils-all/note-2-32.d: Update expected note output.
607         * testsuite/binutils-all/note-2-64.d: Likewise.
608
609 2017-03-13  Alan Modra  <amodra@gmail.com>
610             Taeung Song <treeze.taeung@gmail.com>
611
612         * objdump.c (update_source_path): Add abfd param.  Add struct
613         stat var.  Pass to try_print_file_open.  Warn if source is more
614         recent than object.
615         (try_print_file_open, slurp_file): Add struct stat param to
616         return fstat.
617         (show_line): Call update_source_path with bfd.
618
619 2017-03-10  Chia-Hao Lo  <fcamel@gmail.com>
620
621         PR binutils/21235
622         * objdump.c (main): Set do_wide with --wide.
623
624 2017-03-10  Nick Clifton  <nickc@redhat.com>
625
626         * readelf.c (get_machine_name): Rearrange switch table in order of
627         increasing machine number.  Add missing entries.
628
629 2017-03-08  H.J. Lu  <hongjiu.lu@intel.com>
630
631         PR binutils/21231
632         * readelf.c (decode_x86_isa): Change argument to unsigned int.
633         (print_gnu_property_note): Retrieve property type and datasz as
634         4-byte integer.  Consolidate property datasz check.  Check
635         GNU_PROPERTY_LOPROC and GNU_PROPERTY_LOUSER.
636         * testsuite/binutils-all/i386/pr21231a.d: New file.
637         * testsuite/binutils-all/i386/pr21231a.s: Likewise.
638         * testsuite/binutils-all/i386/pr21231b.d: Likewise.
639         * testsuite/binutils-all/i386/pr21231b.s: Likewise.
640         * testsuite/binutils-all/x86-64/pr21231a.d: Likewise.
641         * testsuite/binutils-all/x86-64/pr21231a.s: Likewise.
642         * testsuite/binutils-all/x86-64/pr21231b.d: Likewise.
643         * testsuite/binutils-all/x86-64/pr21231b.s: Likewise.
644
645 2017-03-06  Nick Clifton  <nickc@redhat.com>
646
647         * readelf.c (print_gnu_build_attribute_name): Read byte values
648         from the name string as unsigned bytes.
649         (process_notes_at): Use memcpy to copy an unterminated name
650         string.
651
652 2017-03-06  Sam Thursfield  <sam.thursfield@codethink.co.uk>
653
654         * configure.ac (AC_CHECK_DECLS): Add asprintf.
655         * config.in: Regenerate.
656         * configure: Regenerate.
657
658 2017-03-02  Nick Clifton  <nickc@redhat.com>
659
660         * readelf.c (print_gnu_build_attribute_description): Use global
661         symbols for OPEN attributes if at all possible.
662         * objcopy.c (is_merged_note_section): Support build note sections
663         without the SHF_GNU_BUILD_NOTE section flag set.
664
665 2017-03-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
666
667         * dwarf.c (debug_displays_assert): New static assertion.
668
669 2017-03-02  Jan Kratochvil  <jan.kratochvil@redhat.com>
670
671         * dwarf.h (enum dwarf_section_display_enum): Add loclists and rnglists.
672
673 2017-03-01  Nick Clifton  <nickc@redhat.com>
674
675         * readelf.c (get_note_type): Add support for GNU_BUILD_NOTEs.
676         (get_gnu_elf_note_type): Add support for GNU_PROPERTY_NOTEs.
677         (decode_x86_isa): New function.
678         (print_gnu_property_note): New function.
679         (print_gnu_note): Handle GNU_PROPERTY_NOTEs.
680         (print_gnu_build_attribute_description): New function.
681         (print_gnu_build_attribute_name): New function.
682         (process_note): Add support for GNU_BUILD_NOTEs.
683         * objcopy.c (--merge-notes): New command line option.
684         (copy_options): Add merge-notes.
685         (copy_usage): Likewise.
686         (is_merge_note_section): New function.
687         (merge_gnu_build_notes): New function.
688         (copy_object): Merge note sections if asked to do so.
689         (skip_section): Add skip_copy parameter.  Add support for skipping
690         merged note sections.
691         (copy_relocations_in_section): Update call to skip_section.
692         (copy_section): Likewise.
693         (copy_main): Add support for merge-notes option.
694         * doc/binutils.texi: Document the new option to objcopy.
695         * NEWS: Mention the new feature.
696         * testsuite/binutils-all/note-2-32.d: New test.  Checks note
697         merging on 32-bit targets.
698         * testsuite/binutils-all/note-2-32.s: New test source file.
699         * testsuite/binutils-all/note-2-64.d: New test.  Like note-2-32.d
700         but for 64-bit targets.
701         * testsuite/binutils-all/note-2-64.s: New test source file.
702         * testsuite/binutils-all/objcopy.exp: Run the new test.
703
704 2017-02-28  Peter Bergner  <bergner@vnet.ibm.com>
705
706         * objdump.c (main): Use remove_whitespace_and_extra_commas.
707
708 2017-02-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
709
710         Fix compilation with GCC 4.4.7.
711         * dwarf.c (display_loclists_list, display_debug_rnglists_list):
712         Initialize begin and end.
713
714 2017-02-25  Alan Modra  <amodra@gmail.com>
715
716         * testsuite/binutils-all/dw5.S: Replace .string with .asciz.
717         Support hpux .comm variant.
718         * testsuite/binutils-all/readelf.exp: Define HPUX when assembling
719         dw5 test for hppa64-hpux.
720
721 2017-02-24  Nick Clifton  <nickc@redhat.com>
722
723         * readelf.c (show_name, do_dynamic, do_syms, do_dyn_syms,
724         (do_reloc, do_sections, do_section_groups, do_section_details,
725         (do_segments, do_unwind, do_using_dynamic, do_header, do_dump,
726         (do_version, do_histogram, do_debugging, do_arch, do_notes,
727         (do_archive_index, is_32bit_elf, decompress_dumps): Use
728         bfd_boolean type.
729         (parse_args): Treat the do_* variables as booleans.
730         (print_vma): Return an unsigned int.
731         (print_symbol): Change width parameter to signed int.
732         (is_ia64_vms): Change return type to bfd_boolean.
733         (guess_is_rela): Likewise.
734         (slurp_rela_relocs): Likewise.
735         (slurp_rel_relocs): Likewise.
736         (dump_relocations): Likewise.
737         (process_file_header): Likewise.
738         (get_program_headers): Likewise.
739         (process_program_headers): Likewise.
740         (process_section_headers): Likewise.
741         (process_section_groups): Likewise.
742         (dump_ia64_vms_dynamic_fixups): Likewise.
743         (dump_ia64_vms_dynamic_relocs): Likewise.
744         (process_ia64_vms_dynamic_relocs): Likewise.
745         (process_relocs): Likewise.
746         (dump_ia64_unwind): Likewise.
747         (ia64_process_unwind): Likewise.
748         (dump_hppa_unwind): Likewise.
749         (slurp_hppa_unwind_table): Likewise.
750         (hppa_process_unwind): Likewise.
751         (decode_arm_unwind_bytecode): Likewise.
752         (decode_tic6x_unwind_bytecode): Likewise.
753         (decode_arm_unwind): Likewise.
754         (dump_arm_unwind): Likewise.
755         (arm_process_unwind): Likewise.
756         (process_unwind): Likewise.
757         (get_32bit_dynamic_section): Likewise.
758         (get_64bit_dynamic_section): Likewise.
759         (process_dynamic_section): Likewise.
760         (process_version_sections): Likewise.
761         (process_symbol_table): Likewise.
762         (process_syminfo): Likewise.
763         (apply_relocations): Likewise.
764         (disassemble_section): Likewise.
765         (dump_section_as_strings): Likewise.
766         (dump_section_as_bytes): Likewise.
767         (load_specific_debug_section): Likewise.
768         (load_debug_section): Likewise.
769         (display_debug_section): Likewise.
770         (process_section_contents): Likewise.
771         (process_attributes): Likewise.
772         (process_nds32_specific): Likewise.
773         (process_gnu_liblist): Likewise.
774         (print_core_note): Likewise.
775         (print_gnu_note): Likewise.
776         (print_v850_note): Likewise.
777         (process_netbsd_elf_note): Likewise.
778         (print_stapsdt_note): Likewise.
779         (print_ia64_vms_note): Likewise.
780         (process_note): Likewise.
781         (process_notes_at): Likewise.
782         (process_corefile_note_segments): Likewise.
783         (process_v850_notes): Likewise.
784         (process_note_sections): Likewise.
785         (process_notes): Likewise.
786         (process_arch_specific): Likewise.
787         (get_file_header): Likewise.
788         (process_object): Likewise.
789         (process_archive): Likewise.
790         (process_file): Likewise.
791         (section_subset): Make static.
792         (get_mips_reg_size): Return a signed integer.
793         (process_object): Reverse the logic of the return value.
794         (process_archive): Likewise.
795         (process_file): Likewise.
796         (process_program_headers): Fix snafu - if the program headers are
797         not available then this is not a cause to fail.
798         (process_corefile_note_segments): Likewise.
799
800 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
801
802         * readelf.c (get_ver_flags): Tidy the formatting of the string
803         returned
804
805 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
806
807         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Make
808         `isum' unsigned.
809         <SHT_GNU_verneed>: Likewise.
810
811 2017-02-24  Maciej W. Rozycki  <macro@imgtec.com>
812
813         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Limit
814         the number of entries processed by the section size.  Don't
815         break out of the loop if `ent.vd_next' is 0.
816
817 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
818
819         * testsuite/binutils-all/dw5.S: New file.
820         * testsuite/binutils-all/dw5.W: New file.
821         * testsuite/binutils-all/readelf.exp (readelf -wiaoRlL): New test.
822
823 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
824
825         * dwarf.c (read_and_display_attr_value): Support DW_FORM_data16.
826
827 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
828
829         * dwarf.c (display_debug_macro): Support DWARF-5.  Rename
830         DW_MACRO_GNU_*.
831
832 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
833
834         * dwarf.c (decode_location_expression): Support DW_OP_implicit_pointer,
835         DW_OP_const_type, DW_OP_regval_type, DW_OP_deref_type, DW_OP_convert
836         and DW_OP_reinterpret.
837         (read_and_display_attr_value): Support DW_AT_call_value,
838         DW_AT_call_data_value, DW_AT_call_target and
839         DW_AT_call_target_clobbered.
840
841 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
842
843         * dwarf.c (fetch_indirect_line_string): New function.
844         (abbrev_attr): New field implicit_const.
845         (add_abbrev_attr): New parameter implicit_const.
846         (process_abbrev_section): Support DW_FORM_implicit_const.
847         (decode_location_expression): Support DW_OP_entry_value.
848         (read_and_display_attr_value): Add parameter implicit_const.  Support
849         DW_FORM_line_strp and DW_FORM_implicit_const.
850         (read_and_display_attr): Add parameter implicit_const.
851         (process_debug_info): Support line_str and DWARF-5.
852         (read_debug_line_header): Support DWARF-5.
853         (display_formatted_table): New function.
854         (display_debug_lines_raw): New parameter file.  Support DWARF-5.
855         (display_debug_lines_decoded): New parameter fileptr.  Support DWARF-5.
856         (display_debug_lines): Pass file parameter.
857         (display_debug_macro): Update read_and_display_attr_value caller.
858         (display_debug_abbrev): Support DW_FORM_implicit_const.
859         (display_loclists_list): New function.
860         (display_loc_list): Support .debug_loclists.
861         (display_debug_ranges_list): New function from display_debug_ranges.
862         (display_debug_rnglists_list): New function.
863         (display_debug_ranges): Support .debug_rnglists.
864         (debug_displays): Add .debug_line_str, .debug_loclists and
865         .debug_rnglists.
866         * dwarf.h: Include dwarf2.h
867         (DWARF2_Internal_LineInfo): Add li_offset_size.
868         (DWARF2_Internal_CompUnit): Add cu_unit_type.
869         (enum dwarf_section_display_enum): Add line_str.
870         * readelf.c (process_section_headers): Add rnglists and loclists.
871
872 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
873
874         * dwarf.c (display_block): Add parameter delimiter.
875         (decode_location_expression): Update display_block callers.
876         (read_and_display_attr_value): Add parameter delimiter.
877         (read_and_display_attr, display_debug_macro): Update
878         read_and_display_attr_value caller.
879
880 2017-02-23  Jan Kratochvil  <jan.kratochvil@redhat.com>
881
882         * dwarf.c (display_loc_list): Use dwarf_vma for offset, base_address
883         and off.
884         (display_loc_list_dwo): Use dwarf_vma for offset.
885         (display_debug_loc): Use dwarf_vma for offset, base_address.
886         (struct range_entry, range_entry_compar): Use dwarf_vma for
887         ranges_offset.
888         (display_debug_ranges): Use dwarf_vma for ranges_offset, offset and
889         base_address.
890
891 2017-02-23  Nick Clifton  <nickc@redhat.com>
892
893         * readelf.c (display_tag_value): Use an explicit signed type for
894         the tag parameter.
895         (display_gnu_attributes): Use an unsigned integer type for
896         attribute tags.
897         (display_power_gnu_attribute): Likewise.
898         (display_s390_gnu_attribute): Likewise.
899         (display_sparc_hwcaps): Likewise.
900         (display_sparc_hwcaps2): Likewise.
901         (display_sparc_gnu_attribute): Likewise.
902         (display_mips_gnu_attribute): Likewise.
903         (display_tic6x_attribute): Likewise.
904         (display_raw_attribute): Likewise.
905         (process_attributes): Likewise.
906         (process_arm_specific): Delete redundant function.
907         (process_power_specific): Likewise.
908         (process_s390_specific): Likewise.
909         (process_sparc_specific): Likewise.
910         (process_tic6x_specific): Likewise.
911         (process_msp430x_specific): Likewise.
912         (display_public_gnu_attributes): New function.  Displays known
913         information about an unknown gnu attribute.
914         (display_generic_attribute): New function.  Calls
915         display_tag_value for non-nul tags.
916         (process_arch_specific): Call process_attributes even for
917         architectures not known to specifically support gnu attributes.
918
919 2017-02-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
920
921         * dwarf.c (decode_location_expression): Display also OP.
922
923 2017-02-22  Maciej W. Rozycki  <macro@imgtec.com>
924
925         * readelf.c (process_version_sections) <SHT_GNU_verdef>: Print a
926         new line between the heading and the first version definition
927         entry.
928
929 2017-02-20  Nick Clifton  <nickc@redhat.com>
930
931         PR binutils/21156
932         * dwarf.c (cu_tu_indexes_read): Move into...
933         (load_cu_tu_indexes): ... here.  Change the variable into
934         tri-state.  Change the function into boolean, returning
935         false if the indicies could not be loaded.
936         (find_cu_tu_set): Return NULL if the indicies could not be
937         loaded.
938
939 2017-02-17  Nick Clifton  <nickc@redhat.com>
940
941         PR binutils/21156
942         * readelf.c (find_section_in_set): Test for invalid section
943         indicies.
944
945 2017-02-17  Nick Clifton  <nickc@redhat.com>
946
947         * readelf.c (get_section_type_name): Add decoding of GNU section
948         types.
949
950 2017-02-15  Nick Clifton  <nickc@redhat.com>
951
952         * MAINTAINERS: (MIPS, MN10300): Move Eric Christopher to Past
953         Maintainers section.
954
955 2017-02-14  Nick Clifton  <nickc@redhat.com>
956
957         PR binutils/21159
958         * readelf.c (dump_section_as_strings): Reset the start address if
959         no decompression is perfromed.
960         (dump_section_as_bytes): Likewise.
961
962 2017-02-14  Nick Clifton  <nickc@redhat.com>
963
964         PR binutils/21158
965         * rddbg.c (read_symbol_stabs_debugging_info): Check for a null or
966         empty symbol name.
967
968 2017-02-14  Nick Clifton  <nickc@redhat.com>
969
970         PR binutils/21157
971         * stabs.c (parse_stab_enum_type): Check for corrupt NAME:VALUE
972         pairs.
973         (parse_number): Exit early if passed an empty string.
974
975 2017-02-14  Nick Clifton  <nickc@redhat.com>
976
977         PR binutils/21155
978         * readelf.c (IN_RANGE): New macro.  Tests for an address + offset
979         being within a given range.
980         (target_specific_reloc_handling): Use macro to test for underflow
981         as well as overflow of reloc offset.
982
983 2017-02-13  Nick Clifton  <nickc@redhat.com>
984
985         PR binutils/21150
986         * nm.c (file_symbol): Add test of string length before testing
987         string characters.
988
989 2017-02-13  Nick Clifton  <nickc@redhat.com>
990
991         PR binutils/21135
992         * readelf.c (dump_section_as_bytes): Handle the case where
993         uncompress_section_contents returns false.
994         (dump_section_as_bytes, load_specific_debug_section): Likewise.
995
996 2017-02-13  Nick Clifton  <nickc@redhat.com>
997
998         PR binutils/21149
999         * readelf.c (get_compression_header): Add size parameter.  Check
1000         size against sizeof compression header before attempting to
1001         extract the header.
1002         (process_section_headers): Pass size to get_compression_header.
1003         (dump_section_as_strings): Likewise.
1004         (dump_section_as_bytes): Likewise.
1005         (load_specific_debug_section): Likewise.
1006
1007 2017-02-13  Nick Clifton  <nickc@redhat.com>
1008
1009         PR binutils/21148
1010         * readelf.c (process_version_sections): Include size of auxillary
1011         version information when checking for buffer overflow.
1012
1013 2017-02-13  Nick Clifton  <nickc@redhat.com>
1014
1015         PR binutils/21147
1016         * readelf.c (process_section_contents): Fix off by one error
1017         reporting un-dumped sections.
1018
1019 2017-02-13  Nick Clifton  <nickc@redhat.com>
1020
1021         PR binutils/21139
1022         * readelf.c (target_specific_reloc_handling): Add num_syms
1023         parameter.  Check for symbol table overflow before accessing
1024         symbol value.  If reloc pointer is NULL, discard all saved state.
1025         (apply_relocations): Pass num_syms to target_specific_reloc_handling.
1026         Call target_specific_reloc_handling with a NULL reloc pointer
1027         after processing all of the relocs.
1028
1029 2017-02-13  Nick Clifton  <nickc@redhat.com>
1030
1031         PR binutils/21137
1032         * readelf.c (target_specific_reloc_handling): Add end parameter.
1033         Check for buffer overflow before writing relocated values.
1034         (apply_relocations): Pass end to target_specific_reloc_handling.
1035
1036 2017-01-27  Dilyan Palauzov  <dilyan.palauzov@aegee.org>
1037             Nick Clifton  <nickc@redhat.com>
1038
1039         PR 20343
1040         * doc/binutils.texi (ar): Extend documentation of the --plugin
1041         option.  Include a description of where the plugins should be
1042         located.
1043         (nm): Likewise.
1044
1045 2017-01-23  Nick Clifton  <nickc@redhat.com>
1046
1047         * MAINTAINERS: Add Bernd to Past Maintainers section.
1048         (SCORE): Remove Mei Ligang as maintainer.  Add to Past Maintainers
1049         section.
1050
1051 2017-01-23  Bernd Schmidt  <bschmidt@redhat.com>
1052
1053         * MAINTAINERS (BFIN): Remove myself as Blackfin maintainer.
1054
1055 2017-01-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1056
1057         * objdump.c (dump_section_header): Extract max section name length
1058         from data parameter, use this when formatting output.
1059         (find_longest_section_name): New function.
1060         (dump_headers): Calculate longest section name when in wide mode,
1061         reformat to unify printing of header line.
1062
1063 2017-01-18  Bernhard Rosenkranzer  <bero@lindev.ch>
1064
1065         PR 21059
1066         * arlex.l: Support processing with flex 2.6.3.
1067         * deflex.l: Likewise.
1068
1069 2017-01-17  Dmitry Timoshkov  <dmitry@baikal.ru>
1070
1071         * resbin.c: Optional dialog control data immediately follows
1072         the control description without alignment.
1073         * testsuite/binutils-all/windres/controldata.rc: New test.
1074         source.
1075         * testsuite/binutils-all/windres/controldata.rsd: New test.
1076
1077 2017-01-12  Nick Clifton  <nickc@redhat.com>
1078
1079         PR binutils/20876
1080         * NEWS: Mention the new feature.
1081         * testsuite/binutils-all/objdump.exp (test_build_id_debuglink):
1082         New proc to test the location of separate debug info files using
1083         the build-id method.
1084
1085 2017-01-10  Nick Clifton  <nickc@redhat.com>
1086
1087         PR 21034
1088         * stabs.c (parse_stab_members): Fix thinko checking for g++
1089         version 1 stabs information.
1090
1091 2017-01-09  Nick Clifton  <nickc@redhat.com>
1092
1093         * objdump.c (display_file): Add new parameter 'last_file'.  If
1094         last_file is true, do not call bfd_close at the end of the
1095         function.
1096         (main): Set the value of the last_file parameter when calling
1097         display_file.
1098
1099 2017-01-09  Alan Modra  <amodra@gmail.com>
1100
1101         * readelf.c (process_section_headers): Correct .rel.dyn/.rela.dyn
1102         comment.
1103
1104 2017-01-06  Nick Clifton  <nickc@redhat.com>
1105
1106         * MAINTAINERS: Move Paul Brook to the Past Maintainers section.
1107
1108 2017-01-04  Dilan Palauzov  <dilyan.palauzov@aegee.org>
1109
1110         PR 20958
1111         * syslex.l (option): Add noyywrap
1112         (yywrap): Delete.
1113
1114 2017-01-02  Alan Modra  <amodra@gmail.com>
1115
1116         Update year range in copyright notice of all files.
1117
1118 For older changes see ChangeLog-2016
1119 \f
1120 Copyright (C) 2017 Free Software Foundation, Inc.
1121
1122 Copying and distribution of this file, with or without modification,
1123 are permitted in any medium without royalty provided the copyright
1124 notice and this notice are preserved.
1125
1126 Local Variables:
1127 mode: change-log
1128 left-margin: 8
1129 fill-column: 74
1130 version-control: never
1131 End: