mirror of git://gcc.gnu.org/git/gcc.git
string.c (compare0): Remove.
* runtime/string.c (compare0): Remove. (find_option): Inline string comparison From-SVN: r164168
This commit is contained in:
parent
996b42ef6a
commit
a5ad78bbcd
|
|
@ -1,3 +1,8 @@
|
||||||
|
2010-09-10 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
|
||||||
|
|
||||||
|
* runtime/string.c (compare0): Remove.
|
||||||
|
(find_option): Inline string comparison
|
||||||
|
|
||||||
2010-09-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
|
2010-09-09 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
|
||||||
|
|
||||||
* acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE,
|
* acinclude.m4 (LIBGFOR_CHECK_FOR_BROKEN_ISFINITE,
|
||||||
|
|
|
||||||
|
|
@ -25,24 +25,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||||
#include "libgfortran.h"
|
#include "libgfortran.h"
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
/* Compare a C-style string with a fortran style string in a case-insensitive
|
|
||||||
manner. Used for decoding string options to various statements. Returns
|
|
||||||
zero if not equal, nonzero if equal. */
|
|
||||||
|
|
||||||
static int
|
|
||||||
compare0 (const char *s1, gfc_charlen_type s1_len, const char *s2)
|
|
||||||
{
|
|
||||||
gfc_charlen_type len;
|
|
||||||
|
|
||||||
/* Strip trailing blanks from the Fortran string. */
|
|
||||||
len = fstrlen (s1, s1_len);
|
|
||||||
|
|
||||||
if ((size_t) len != strlen(s2))
|
|
||||||
return 0; /* don't match */
|
|
||||||
|
|
||||||
return strncasecmp (s1, s2, len) == 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/* Given a fortran string, return its length exclusive of the trailing
|
/* Given a fortran string, return its length exclusive of the trailing
|
||||||
spaces. */
|
spaces. */
|
||||||
|
|
@ -116,8 +98,11 @@ int
|
||||||
find_option (st_parameter_common *cmp, const char *s1, gfc_charlen_type s1_len,
|
find_option (st_parameter_common *cmp, const char *s1, gfc_charlen_type s1_len,
|
||||||
const st_option * opts, const char *error_message)
|
const st_option * opts, const char *error_message)
|
||||||
{
|
{
|
||||||
|
/* Strip trailing blanks from the Fortran string. */
|
||||||
|
size_t len = (size_t) fstrlen (s1, s1_len);
|
||||||
|
|
||||||
for (; opts->name; opts++)
|
for (; opts->name; opts++)
|
||||||
if (compare0 (s1, s1_len, opts->name))
|
if (len == strlen(opts->name) && strncasecmp (s1, opts->name, len) == 0)
|
||||||
return opts->value;
|
return opts->value;
|
||||||
|
|
||||||
generate_error (cmp, LIBERROR_BAD_OPTION, error_message);
|
generate_error (cmp, LIBERROR_BAD_OPTION, error_message);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue