diff options
author | Alexander Monakov <amonakov@ispras.ru> | 2017-07-23 21:40:24 +0300 |
---|---|---|
committer | Alexander Monakov <amonakov@gcc.gnu.org> | 2017-07-23 21:40:24 +0300 |
commit | c5014982bac1ec109d90e422f9a10039c21a5aa0 (patch) | |
tree | 89bd60832def929c9a4e44b2cb7e6e671381fd47 /gcc/fortran/interface.c | |
parent | e2b71b5ac0542bb82ca190eed503853a5e3f1bdd (diff) | |
download | gcc-c5014982bac1ec109d90e422f9a10039c21a5aa0.zip gcc-c5014982bac1ec109d90e422f9a10039c21a5aa0.tar.gz gcc-c5014982bac1ec109d90e422f9a10039c21a5aa0.tar.bz2 |
fortran: fix pair_cmp qsort comparator
* interface.c (pair_cmp): Fix gfc_symbol comparison. Adjust comment.
From-SVN: r250463
Diffstat (limited to 'gcc/fortran/interface.c')
-rw-r--r-- | gcc/fortran/interface.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c index 6fe0647..13e2bdd 100644 --- a/gcc/fortran/interface.c +++ b/gcc/fortran/interface.c @@ -3294,7 +3294,7 @@ argpair; order: - p->a->expr == NULL - p->a->expr->expr_type != EXPR_VARIABLE - - growing p->a->expr->symbol. */ + - by gfc_symbol pointer value (larger first). */ static int pair_cmp (const void *p1, const void *p2) @@ -3320,6 +3320,8 @@ pair_cmp (const void *p1, const void *p2) } if (a2->expr->expr_type != EXPR_VARIABLE) return 1; + if (a1->expr->symtree->n.sym > a2->expr->symtree->n.sym) + return -1; return a1->expr->symtree->n.sym < a2->expr->symtree->n.sym; } |