1
0
mirror of https://git.savannah.gnu.org/git/gperf.git synced 2025-12-02 13:09:22 +00:00

Change generated code after the meaning of __inline is changed in GCC 4.3.

This commit is contained in:
Bruno Haible
2007-03-31 15:16:05 +00:00
parent 89f5335289
commit 0e4abdfd81
17 changed files with 66 additions and 1 deletions

View File

@@ -1,3 +1,16 @@
2007-03-31 Bruno Haible <bruno@clisp.org>
Change generated code after the meaning of __inline is changed in
GCC 4.3.
* src/output.cc (Output::output_lookup_function): Emit an inline
marker that also works with gcc-4.3 in c99 or gnu99 mode.
* tests/c-parse.exp, tests/charsets.exp, tests/chill.exp,
tests/cplusplus.exp, tests/gpc.exp, tests/incomplete.exp,
tests/java.exp, tests/languages.exp, tests/modula2.exp,
tests/objc.exp, tests/permut2.exp, tests/permut3.exp,
tests/permutc2.exp, tests/test-4.exp: Update.
Reported by Bruce Korb <Bruce.Korb@gmail.com>.
2006-06-29 Brendan Kehoe <brendan@zen.org>
* gperf-3.0.2 released.

4
NEWS
View File

@@ -1,3 +1,7 @@
New in 3.0.3:
* The generated C code is compatible with gcc-4.3.x in c99 or gnu99 mode.
New in 3.0.2:
* Compiles with g++-4.0.x.

View File

@@ -1,5 +1,5 @@
/* Output routines.
Copyright (C) 1989-1998, 2000, 2002-2004, 2006 Free Software Foundation, Inc.
Copyright (C) 1989-1998, 2000, 2002-2004, 2006-2007 Free Software Foundation, Inc.
Written by Douglas C. Schmidt <schmidt@ics.uci.edu>
and Bruno Haible <bruno@clisp.org>.
@@ -1884,8 +1884,14 @@ Output::output_lookup_function () const
{
/* Output the function's head. */
if (option[KRC] | option[C] | option[ANSIC])
/* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
inline semantics, unless -fgnu89-inline is used. It defines a macro
__GNUC_STDC_INLINE__ to indicate this situation. */
printf ("#ifdef __GNUC__\n"
"__inline\n"
"#ifdef __GNUC_STDC_INLINE__\n"
"__attribute__ ((__gnu_inline__))\n"
"#endif\n"
"#endif\n");
printf ("%s%s\n",

View File

@@ -199,6 +199,9 @@ static struct resword wordlist[] =
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct resword *
is_reserved_word (str, len)

View File

@@ -1805,6 +1805,9 @@ static const struct charset wordlist[] =
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
const struct charset *
in_word_set (str, len)

View File

@@ -178,6 +178,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct resword *
in_word_set (str, len)

View File

@@ -103,6 +103,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct resword *
is_reserved_word (str, len)

View File

@@ -94,6 +94,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct resword *
is_reserved_word (str, len)

View File

@@ -84,6 +84,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct month *
in_word_set (str, len)

View File

@@ -121,6 +121,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct java_keyword *
java_keyword (str, len)

View File

@@ -1462,6 +1462,9 @@ static const struct language wordlist[] =
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
const struct language *
in_word_set (str, len)

View File

@@ -111,6 +111,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
const char *
in_word_set (str, len)

View File

@@ -97,6 +97,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct resword *
is_reserved_word (str, len)

View File

@@ -83,6 +83,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
const char *
in_word_set (str, len)

View File

@@ -83,6 +83,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
const char *
in_word_set (str, len)

View File

@@ -130,6 +130,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
const char *
in_word_set (str, len)

View File

@@ -85,6 +85,9 @@ hash (str, len)
#ifdef __GNUC__
__inline
#ifdef __GNUC_STDC_INLINE__
__attribute__ ((__gnu_inline__))
#endif
#endif
struct resword *
in_word_set (str, len)