Skip to contentSkip to conversation

binutils: Fix building nativesdk binutils with gcc 4.9

PATCH In review Martin Jansa 2 participants 5 messages Apr 10, 2015 – Apr 20, 2015

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 binutils: Fix building nativesdk binutils with gcc 4.9

From: Khem Raj <[email protected]>

Patches explain the issue in detail but this is exposed with gcc 4.9 in binutils 2.23.2

(From OE-Core rev: fc5c467b680fc5aef4b0f689e6988e17a9322ae0)

(From OE-Core rev: 4dfb8847ebf8aab90ad8888933468e2899c96998)

(From OE-Core rev: af347d3298e15552d502d5b2ce497bbda9705bc7)

---
 meta/recipes-devtools/binutils/binutils-2.23.1.inc |   2 +
 ...ild-breakage-from-bfd_set_section_vma-cha.patch |  31 ++++
 .../replace_macros_with_static_inline.patch        | 188 +++++++++++++++++++++
 3 files changed, 221 insertions(+)
 create mode 100644 meta/recipes-devtools/binutils/binutils/0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch
 create mode 100644 meta/recipes-devtools/binutils/binutils/replace_macros_with_static_inline.patch
meta/recipes-devtools/binutils/binutils-2.23.1.inc +2 -0
index 667ad0b..7b3366a 100644
@@ -29,6 +29,8 @@ SRC_URI = "\
      file://mips64-default-ld-emulation.patch \
      ${BACKPORT} \
      file://binutils-fix-over-array-bounds-issue.patch \
+     file://replace_macros_with_static_inline.patch \
+     file://0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch \
      "
 
 BACKPORT = "\
meta/recipes-devtools/binutils/binutils/0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch new file +31 -0
new file mode 100644
index 0000000..f786b17
@@ -0,0 +1,31 @@
+Upstream-Status: Backport
+
+From 0a09fb4a09e80c36fa3ef763ae276fd13d272a36 Mon Sep 17 00:00:00 2001
+From: Hans-Peter Nilsson <[email protected]>
+Date: Sat, 1 Feb 2014 01:11:28 +0100
+Subject: [PATCH] Fix MMIX build breakage from bfd_set_section_vma change.
+
+	* emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
+	call to bfd_set_section_vma exposed by recent bfd_set_section_vma
+	change.
+---
+ ld/ChangeLog                 |    6 ++++++
+ ld/emultempl/mmix-elfnmmo.em |    2 +-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/ld/emultempl/mmix-elfnmmo.em b/ld/emultempl/mmix-elfnmmo.em
+index 0059792..5e9781a 100644
+--- a/ld/emultempl/mmix-elfnmmo.em
++++ b/ld/emultempl/mmix-elfnmmo.em
+@@ -102,7 +102,7 @@ mmix_after_allocation (void)
+      This section is only present when there are register symbols.  */
+   sec = bfd_get_section_by_name (link_info.output_bfd, MMIX_REG_SECTION_NAME);
+   if (sec != NULL)
+-    bfd_set_section_vma (abfd, sec, 0);
++    bfd_set_section_vma (sec->owner, sec, 0);
+ 
+   if (!_bfd_mmix_after_linker_allocation (link_info.output_bfd, &link_info))
+     {
+-- 
+1.7.10.4
+
meta/recipes-devtools/binutils/binutils/replace_macros_with_static_inline.patch new file +188 -0

188 lines not on this page · raw message

Signature · 1 line
2.3.5
#1 lore raw

PATCH 2/2 binutils: backport patch to fix build with gcc-4.9

* backported from 2.23.2, fixes:
work/x86_64-linux/binutils-native/2.23.1-r3/binutils-2.23.1/gas/write.c:409:24:
error: 'dummy.fr_type' may be used uninitialized in this function [-Werror=maybe-uninitialized]

   gas_assert (prev_frag->fr_type != 0);
                        ^
work/x86_64-linux/binutils-native/2.23.1-r3/binutils-2.23.1/gas/write.c:392:9: note: 'dummy' was declared here
   fragS dummy, *prev_frag = &dummy;
         ^
---
 meta/recipes-devtools/binutils/binutils-2.23.1.inc |  1 +
 ...in_frchains_together_1-Reorder-assertion-.patch | 30 ++++++++++++++++++++++
 2 files changed, 31 insertions(+)
 create mode 100644 meta/recipes-devtools/binutils/binutils/0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch
meta/recipes-devtools/binutils/binutils-2.23.1.inc +1 -0
index 7b3366a..6a6811b 100644
@@ -31,6 +31,7 @@ SRC_URI = "\
      file://binutils-fix-over-array-bounds-issue.patch \
      file://replace_macros_with_static_inline.patch \
      file://0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch \
+     file://0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch \
      "
 
 BACKPORT = "\
meta/recipes-devtools/binutils/binutils/0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch new file +30 -0
new file mode 100644
index 0000000..ffe6852
@@ -0,0 +1,30 @@
+From c50d883cb61ff9917464cb695a0fd83fdb0f9c20 Mon Sep 17 00:00:00 2001
+From: Alan Modra <[email protected]>
+Date: Mon, 21 Jan 2013 13:48:31 +0000
+Subject: [PATCH] write.c (chain_frchains_together_1): Reorder assertion to
+ avoid uninit warning.
+
+Upstream-Status: Backport from 2.23.2
+Signed-off-by: Martin Jansa <[email protected]>
+---
+ gas/write.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gas/write.c b/gas/write.c
+index a467147..56ebb6c 100644
+--- a/gas/write.c
++++ b/gas/write.c
+@@ -406,8 +406,8 @@ chain_frchains_together_1 (segT section, struct frchain *frchp)
+ 	  prev_fix = frchp->fix_tail;
+ 	}
+     }
+-  gas_assert (prev_frag->fr_type != 0);
+-  gas_assert (prev_frag != &dummy);
++  gas_assert (prev_frag != &dummy
++	      && prev_frag->fr_type != 0);
+   prev_frag->fr_next = 0;
+   return prev_frag;
+ }
+-- 
+2.3.5
+
Signature · 1 line
2.3.5
#2 lore raw

Re: [dylan][PATCH 2/2] binutils: backport patch to fix build with gcc-4.9

Quoted 12 lines · Martin Jansa

* backported from 2.23.2, fixes:
work/x86_64-linux/binutils-native/2.23.1-r3/binutils-2.23.1/gas/write.c:409:24:
error: 'dummy.fr_type' may be used uninitialized in this function [-Werror=maybe-uninitialized]

  gas_assert (prev_frag->fr_type != 0);
                       ^
work/x86_64-linux/binutils-native/2.23.1-r3/binutils-2.23.1/gas/write.c:392:9: note: 'dummy' was declared here
  fragS dummy, *prev_frag = &dummy;
        ^

This is ok

Quoted 63 lines

---
meta/recipes-devtools/binutils/binutils-2.23.1.inc | 1 + ...in_frchains_together_1-Reorder-assertion-.patch | 30 ++++++++++++++++++++++

2 files changed, 31 insertions(+)

create mode 100644 meta/recipes-devtools/binutils/binutils/0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch

meta/recipes-devtools/binutils/binutils-2.23.1.inc +1 -0
index 7b3366a..6a6811b 100644
@@ -31,6 +31,7 @@ SRC_URI = "\
     file://binutils-fix-over-array-bounds-issue.patch \
     file://replace_macros_with_static_inline.patch \
     file://0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch \
+     file://0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch \
     "
 
 BACKPORT = "\
meta/recipes-devtools/binutils/binutils/0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch new file +30 -0
new file mode 100644
index 0000000..ffe6852
@@ -0,0 +1,30 @@
+From c50d883cb61ff9917464cb695a0fd83fdb0f9c20 Mon Sep 17 00:00:00 2001
+From: Alan Modra <[email protected]>
+Date: Mon, 21 Jan 2013 13:48:31 +0000
+Subject: [PATCH] write.c (chain_frchains_together_1): Reorder assertion to
+ avoid uninit warning.
+
+Upstream-Status: Backport from 2.23.2
+Signed-off-by: Martin Jansa <[email protected]>
+---
+ gas/write.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gas/write.c b/gas/write.c
+index a467147..56ebb6c 100644
+--- a/gas/write.c
++++ b/gas/write.c
+@@ -406,8 +406,8 @@ chain_frchains_together_1 (segT section, struct frchain *frchp)
+ 	  prev_fix = frchp->fix_tail;
+ 	}
+     }
+-  gas_assert (prev_frag->fr_type != 0);
+-  gas_assert (prev_frag != &dummy);
++  gas_assert (prev_frag != &dummy
++	      && prev_frag->fr_type != 0);
+   prev_frag->fr_next = 0;
+   return prev_frag;
+ }
+-- 
+2.3.5
+
Signature · 7 lines
2.3.5

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core
#3 lore raw

Re: [dylan][PATCH 2/2] binutils: backport patch to fix build with gcc-4.9

In reply to Martin Jansa
Quoted 8 lines · Martin Jansa

* backported from 2.23.2, fixes:
work/x86_64-linux/binutils-native/2.23.1-r3/binutils-2.23.1/gas/write.c:409:24:
error: 'dummy.fr_type' may be used uninitialized in this function [-Werror=maybe-uninitialized]

   gas_assert (prev_frag->fr_type != 0);
                        ^
work/x86_64-linux/binutils-native/2.23.1-r3/binutils-2.23.1/gas/write.c:392:9: note: 'dummy' was declared here
   fragS dummy, *prev_frag = &dummy;
         ^

Ping

1/2 patch was merged almost immediately, but it isn't any good without this 2/2.

Quoted 58 lines
---
 meta/recipes-devtools/binutils/binutils-2.23.1.inc |  1 +
 ...in_frchains_together_1-Reorder-assertion-.patch | 30 ++++++++++++++++++++++
 2 files changed, 31 insertions(+)
 create mode 100644 meta/recipes-devtools/binutils/binutils/0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch
meta/recipes-devtools/binutils/binutils-2.23.1.inc +1 -0
index 7b3366a..6a6811b 100644
@@ -31,6 +31,7 @@ SRC_URI = "\
      file://binutils-fix-over-array-bounds-issue.patch \
      file://replace_macros_with_static_inline.patch \
      file://0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch \
+     file://0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch \
      "
 
 BACKPORT = "\
meta/recipes-devtools/binutils/binutils/0001-write.c-chain_frchains_together_1-Reorder-assertion-.patch new file +30 -0
new file mode 100644
index 0000000..ffe6852
@@ -0,0 +1,30 @@
+From c50d883cb61ff9917464cb695a0fd83fdb0f9c20 Mon Sep 17 00:00:00 2001
+From: Alan Modra <[email protected]>
+Date: Mon, 21 Jan 2013 13:48:31 +0000
+Subject: [PATCH] write.c (chain_frchains_together_1): Reorder assertion to
+ avoid uninit warning.
+
+Upstream-Status: Backport from 2.23.2
+Signed-off-by: Martin Jansa <[email protected]>
+---
+ gas/write.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gas/write.c b/gas/write.c
+index a467147..56ebb6c 100644
+--- a/gas/write.c
++++ b/gas/write.c
+@@ -406,8 +406,8 @@ chain_frchains_together_1 (segT section, struct frchain *frchp)
+ 	  prev_fix = frchp->fix_tail;
+ 	}
+     }
+-  gas_assert (prev_frag->fr_type != 0);
+-  gas_assert (prev_frag != &dummy);
++  gas_assert (prev_frag != &dummy
++	      && prev_frag->fr_type != 0);
+   prev_frag->fr_next = 0;
+   return prev_frag;
+ }
+-- 
+2.3.5
+
Signature · 1 line
2.3.5
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#4 lore raw
In reply to Martin Jansa
Quoted 11 lines · Martin Jansa

From: Khem Raj <[email protected]>

Patches explain the issue in detail but this is exposed with gcc 4.9 in binutils 2.23.2

(From OE-Core rev: fc5c467b680fc5aef4b0f689e6988e17a9322ae0)

(From OE-Core rev: 4dfb8847ebf8aab90ad8888933468e2899c96998)

(From OE-Core rev: af347d3298e15552d502d5b2ce497bbda9705bc7)

this is ok

Quoted 257 lines
---
 meta/recipes-devtools/binutils/binutils-2.23.1.inc |   2 +
 ...ild-breakage-from-bfd_set_section_vma-cha.patch |  31 ++++
 .../replace_macros_with_static_inline.patch        | 188 +++++++++++++++++++++
 3 files changed, 221 insertions(+)
 create mode 100644 meta/recipes-devtools/binutils/binutils/0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch
 create mode 100644 meta/recipes-devtools/binutils/binutils/replace_macros_with_static_inline.patch
meta/recipes-devtools/binutils/binutils-2.23.1.inc +2 -0
index 667ad0b..7b3366a 100644
@@ -29,6 +29,8 @@ SRC_URI = "\
      file://mips64-default-ld-emulation.patch \
      ${BACKPORT} \
      file://binutils-fix-over-array-bounds-issue.patch \
+     file://replace_macros_with_static_inline.patch \
+     file://0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch \
      "
 
 BACKPORT = "\
meta/recipes-devtools/binutils/binutils/0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch new file +31 -0
new file mode 100644
index 0000000..f786b17
@@ -0,0 +1,31 @@
+Upstream-Status: Backport
+
+From 0a09fb4a09e80c36fa3ef763ae276fd13d272a36 Mon Sep 17 00:00:00 2001
+From: Hans-Peter Nilsson <[email protected]>
+Date: Sat, 1 Feb 2014 01:11:28 +0100
+Subject: [PATCH] Fix MMIX build breakage from bfd_set_section_vma change.
+
+       * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Fix typo in
+       call to bfd_set_section_vma exposed by recent bfd_set_section_vma
+       change.
+---
+ ld/ChangeLog                 |    6 ++++++
+ ld/emultempl/mmix-elfnmmo.em |    2 +-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/ld/emultempl/mmix-elfnmmo.em b/ld/emultempl/mmix-elfnmmo.em
+index 0059792..5e9781a 100644
+--- a/ld/emultempl/mmix-elfnmmo.em
++++ b/ld/emultempl/mmix-elfnmmo.em
+@@ -102,7 +102,7 @@ mmix_after_allocation (void)
+      This section is only present when there are register symbols.  */
+   sec = bfd_get_section_by_name (link_info.output_bfd, MMIX_REG_SECTION_NAME);
+   if (sec != NULL)
+-    bfd_set_section_vma (abfd, sec, 0);
++    bfd_set_section_vma (sec->owner, sec, 0);
+
+   if (!_bfd_mmix_after_linker_allocation (link_info.output_bfd, &link_info))
+     {
+--
+1.7.10.4
+
meta/recipes-devtools/binutils/binutils/replace_macros_with_static_inline.patch new file +188 -1
new file mode 100644
index 0000000..834f55c
@@ -0,0 +1,188 @@
+Upstream-Status: Backport
+
+From 27b829ee701e29804216b3803fbaeb629be27491 Mon Sep 17 00:00:00 2001
+From: Nick Clifton <[email protected]>
+Date: Wed, 29 Jan 2014 13:46:39 +0000
+Subject: [PATCH 1/1] Following up on Tom's suggestion I am checking in a patch to replace the various
+ bfd_xxx_set macros with static inline functions, so that we can avoid compile time
+ warnings about comma expressions with unused values.
+
+       * bfd-in.h (bfd_set_section_vma): Delete.
+       (bfd_set_section_alignment): Delete.
+       (bfd_set_section_userdata): Delete.
+       (bfd_set_cacheable): Delete.
+       * bfd.c (bfd_set_cacheable): New static inline function.
+       * section.c (bfd_set_section_userdata): Likewise.
+       (bfd_set_section_vma): Likewise.
+       (bfd_set_section_alignment): Likewise.
+       * bfd-in2.h: Regenerate.
+---
+ bfd/ChangeLog |   12 ++++++++++++
+ bfd/bfd-in.h  |    5 -----
+ bfd/bfd-in2.h |   41 +++++++++++++++++++++++++++++++++++------
+ bfd/bfd.c     |    8 ++++++++
+ bfd/section.c |   26 ++++++++++++++++++++++++++
+ 5 files changed, 81 insertions(+), 11 deletions(-)
+
+diff --git a/bfd/bfd-in.h b/bfd/bfd-in.h
+index 3afd71b..c7c5a7d 100644
+--- a/bfd/bfd-in.h
++++ b/bfd/bfd-in.h
+@@ -292,9 +292,6 @@ typedef struct bfd_section *sec_ptr;
+
+ #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
+
+-#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE)
+-#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE)
+-#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE)
+ /* Find the address one past the end of SEC.  */
+ #define bfd_get_section_limit(bfd, sec) \
+   (((bfd)->direction != write_direction && (sec)->rawsize != 0        \
+@@ -517,8 +514,6 @@ extern void warn_deprecated (const char *, const char *, int, const char *);
+
+ #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char)
+
+-#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE)
+-
+ extern bfd_boolean bfd_cache_close
+   (bfd *abfd);
+ /* NB: This declaration should match the autogenerated one in libbfd.h.  */
+diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
+index 71996db..b5aeb40 100644
+--- a/bfd/bfd-in2.h
++++ b/bfd/bfd-in2.h
+@@ -299,9 +299,6 @@ typedef struct bfd_section *sec_ptr;
+
+ #define bfd_is_com_section(ptr) (((ptr)->flags & SEC_IS_COMMON) != 0)
+
+-#define bfd_set_section_vma(bfd, ptr, val) (((ptr)->vma = (ptr)->lma = (val)), ((ptr)->user_set_vma = TRUE), TRUE)
+-#define bfd_set_section_alignment(bfd, ptr, val) (((ptr)->alignment_power = (val)),TRUE)
+-#define bfd_set_section_userdata(bfd, ptr, val) (((ptr)->userdata = (val)),TRUE)
+ /* Find the address one past the end of SEC.  */
+ #define bfd_get_section_limit(bfd, sec) \
+   (((bfd)->direction != write_direction && (sec)->rawsize != 0        \
+@@ -524,8 +521,6 @@ extern void warn_deprecated (const char *, const char *, int, const char *);
+
+ #define bfd_get_symbol_leading_char(abfd) ((abfd)->xvec->symbol_leading_char)
+
+-#define bfd_set_cacheable(abfd,bool) (((abfd)->cacheable = bool), TRUE)
+-
+ extern bfd_boolean bfd_cache_close
+   (bfd *abfd);
+ /* NB: This declaration should match the autogenerated one in libbfd.h.  */
+@@ -1029,7 +1024,7 @@ bfd *bfd_openr (const char *filename, const char *target);
+
+ bfd *bfd_fdopenr (const char *filename, const char *target, int fd);
+
+-bfd *bfd_openstreamr (const char *, const char *, void *);
++bfd *bfd_openstreamr (const char * filename, const char * target, void * stream);
+
+ bfd *bfd_openr_iovec (const char *filename, const char *target,
+     void *(*open_func) (struct bfd *nbfd,
+@@ -1596,6 +1591,32 @@ struct relax_table {
+   int size;
+ };
+
++/* Note: the following are provided as inline functions rather than macros
++   because not all callers use the return value.  A macro implementation
++   would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some
++   compilers will complain about comma expressions that have no effect.  */
++static inline bfd_boolean
++bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val)
++{
++  ptr->userdata = val;
++  return TRUE;
++}
++
++static inline bfd_boolean
++bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val)
++{
++  ptr->vma = ptr->lma = val;
++  ptr->user_set_vma = TRUE;
++  return TRUE;
++}
++
++static inline bfd_boolean
++bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val)
++{
++  ptr->alignment_power = val;
++  return TRUE;
++}
++
+ /* These sections are global, and are managed by BFD.  The application
+    and target back end are not permitted to change the values in
+    these sections.  */
+@@ -6415,6 +6436,14 @@ struct bfd
+   unsigned int selective_search : 1;
+ };
+
++/* See note beside bfd_set_section_userdata.  */
++static inline bfd_boolean
++bfd_set_cacheable (bfd * abfd, bfd_boolean val)
++{
++  abfd->cacheable = val;
++  return TRUE;
++}
++
+ typedef enum bfd_error
+ {
+   bfd_error_no_error = 0,
+diff --git a/bfd/bfd.c b/bfd/bfd.c
+index 8d0580c..2d174f3 100644
+--- a/bfd/bfd.c
++++ b/bfd/bfd.c
+@@ -311,6 +311,14 @@ CODE_FRAGMENT
+ .  unsigned int selective_search : 1;
+ .};
+ .
++.{* See note beside bfd_set_section_userdata.  *}
++.static inline bfd_boolean
++.bfd_set_cacheable (bfd * abfd, bfd_boolean val)
++.{
++.  abfd->cacheable = val;
++.  return TRUE;
++.}
++.
+ */
+
+ #include "sysdep.h"
+diff --git a/bfd/section.c b/bfd/section.c
+index fb19d8c..a661228 100644
+--- a/bfd/section.c
++++ b/bfd/section.c
+@@ -542,6 +542,32 @@ CODE_FRAGMENT
+ .  int size;
+ .};
+ .
++.{* Note: the following are provided as inline functions rather than macros
++.   because not all callers use the return value.  A macro implementation
++.   would use a comma expression, eg: "((ptr)->foo = val, TRUE)" and some
++.   compilers will complain about comma expressions that have no effect.  *}
++.static inline bfd_boolean
++.bfd_set_section_userdata (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, void * val)
++.{
++.  ptr->userdata = val;
++.  return TRUE;
++.}
++.
++.static inline bfd_boolean
++.bfd_set_section_vma (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, bfd_vma val)
++.{
++.  ptr->vma = ptr->lma = val;
++.  ptr->user_set_vma = TRUE;
++.  return TRUE;
++.}
++.
++.static inline bfd_boolean
++.bfd_set_section_alignment (bfd * abfd ATTRIBUTE_UNUSED, asection * ptr, unsigned int val)
++.{
++.  ptr->alignment_power = val;
++.  return TRUE;
++.}
++.
+ .{* These sections are global, and are managed by BFD.  The application
+ .   and target back end are not permitted to change the values in
+ .   these sections.  *}
+--
+1.7.1
+
--

2.3.5