diff options
author | Kai Tietz <kai.tietz@onevision.com> | 2012-02-13 20:42:07 +0000 |
---|---|---|
committer | Kai Tietz <kai.tietz@onevision.com> | 2012-02-13 20:42:07 +0000 |
commit | d0ac693824f69c24abdfd1fbce68494f38cfe121 (patch) | |
tree | 5c19a91927cbdeb556a61aae7f3a4e5062bc41ee | |
parent | cc30c4bd1958a3e3887a095e5ca7c6648fa0fbf0 (diff) | |
download | gdb-d0ac693824f69c24abdfd1fbce68494f38cfe121.zip gdb-d0ac693824f69c24abdfd1fbce68494f38cfe121.tar.gz gdb-d0ac693824f69c24abdfd1fbce68494f38cfe121.tar.bz2 |
* deffilep.y (find_export_in_list): Set is_indent for
first or last element, if identical.
(find_import_in_list): Likewise.
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/deffilep.y | 24 |
2 files changed, 26 insertions, 4 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 56e0777..5919b2d 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2012-02-13 Kai Tietz <ktietz@redhat.com> + + * deffilep.y (find_export_in_list): Set is_indent for + first or last element, if identical. + (find_import_in_list): Likewise. + 2012-02-11 Kai Tietz <ktietz@redhat.com> * deffilep.y (%union): New type id_const. diff --git a/ld/deffilep.y b/ld/deffilep.y index b192100..f66ca2d 100644 --- a/ld/deffilep.y +++ b/ld/deffilep.y @@ -622,13 +622,21 @@ find_export_in_list (def_file_export *b, int max, if (!max) return 0; if ((e = cmp_export_elem (b, ex_name, in_name, its_name, ord)) <= 0) - return 0; + { + if (!e) + *is_ident = 1; + return 0; + } if (max == 1) return 1; if ((e = cmp_export_elem (b + (max - 1), ex_name, in_name, its_name, ord)) > 0) return max; else if (!e || max == 2) - return max - 1; + { + if (!e) + *is_ident = 1; + return max - 1; + } l = 0; r = max - 1; while (l < r) { @@ -757,13 +765,21 @@ find_import_in_list (def_file_import *b, int max, if (!max) return 0; if ((e = cmp_import_elem (b, ex_name, in_name, module, ord)) <= 0) - return 0; + { + if (!e) + *is_ident = 1; + return 0; + } if (max == 1) return 1; if ((e = cmp_import_elem (b + (max - 1), ex_name, in_name, module, ord)) > 0) return max; else if (!e || max == 2) - return max - 1; + { + if (!e) + *is_ident = 1; + return max - 1; + } l = 0; r = max - 1; while (l < r) { |