* read.c (pseudo_set): Reject attempts to set the value of a
authorIan Lance Taylor <ian@airs.com>
Wed, 3 Nov 1999 22:14:47 +0000 (22:14 +0000)
committerIan Lance Taylor <ian@airs.com>
Wed, 3 Nov 1999 22:14:47 +0000 (22:14 +0000)
section symbol.

gas/ChangeLog
gas/read.c

index 3c16db74e130304026a8a21c35a040eee0c1e169..cc1993f6f30dd9f70feb71d4ca0f360991776563 100644 (file)
@@ -1,5 +1,8 @@
 1999-11-03  Ian Lance Taylor  <ian@zembu.com>
 
+       * read.c (pseudo_set): Reject attempts to set the value of a
+       section symbol.
+
        * config/obj-elf.c (obj_elf_ident): Call md_flush_pending_output
        if it is defined.
 
index 886c028fdb395bc2c9f8b53dfd602a9b0184ef47..b64203b5959a037fa919640e15799ba61ad07ead 100644 (file)
@@ -3163,6 +3163,8 @@ pseudo_set (symbolP)
       if (S_GET_SEGMENT (exp.X_add_symbol) == undefined_section
          || exp.X_add_number != 0)
        symbol_set_value_expression (symbolP, &exp);
+      else if (symbol_section_p (symbolP))
+       as_bad ("invalid attempt to set value of section symbol");
       else
        {
          symbolS *s = exp.X_add_symbol;