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:
13
ChangeLog
13
ChangeLog
@@ -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>
|
2006-06-29 Brendan Kehoe <brendan@zen.org>
|
||||||
|
|
||||||
* gperf-3.0.2 released.
|
* gperf-3.0.2 released.
|
||||||
|
|||||||
4
NEWS
4
NEWS
@@ -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:
|
New in 3.0.2:
|
||||||
|
|
||||||
* Compiles with g++-4.0.x.
|
* Compiles with g++-4.0.x.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/* Output routines.
|
/* 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>
|
Written by Douglas C. Schmidt <schmidt@ics.uci.edu>
|
||||||
and Bruno Haible <bruno@clisp.org>.
|
and Bruno Haible <bruno@clisp.org>.
|
||||||
|
|
||||||
@@ -1884,8 +1884,14 @@ Output::output_lookup_function () const
|
|||||||
{
|
{
|
||||||
/* Output the function's head. */
|
/* Output the function's head. */
|
||||||
if (option[KRC] | option[C] | option[ANSIC])
|
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"
|
printf ("#ifdef __GNUC__\n"
|
||||||
"__inline\n"
|
"__inline\n"
|
||||||
|
"#ifdef __GNUC_STDC_INLINE__\n"
|
||||||
|
"__attribute__ ((__gnu_inline__))\n"
|
||||||
|
"#endif\n"
|
||||||
"#endif\n");
|
"#endif\n");
|
||||||
|
|
||||||
printf ("%s%s\n",
|
printf ("%s%s\n",
|
||||||
|
|||||||
@@ -199,6 +199,9 @@ static struct resword wordlist[] =
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct resword *
|
struct resword *
|
||||||
is_reserved_word (str, len)
|
is_reserved_word (str, len)
|
||||||
|
|||||||
@@ -1805,6 +1805,9 @@ static const struct charset wordlist[] =
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
const struct charset *
|
const struct charset *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -178,6 +178,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct resword *
|
struct resword *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -103,6 +103,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct resword *
|
struct resword *
|
||||||
is_reserved_word (str, len)
|
is_reserved_word (str, len)
|
||||||
|
|||||||
@@ -94,6 +94,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct resword *
|
struct resword *
|
||||||
is_reserved_word (str, len)
|
is_reserved_word (str, len)
|
||||||
|
|||||||
@@ -84,6 +84,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct month *
|
struct month *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -121,6 +121,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct java_keyword *
|
struct java_keyword *
|
||||||
java_keyword (str, len)
|
java_keyword (str, len)
|
||||||
|
|||||||
@@ -1462,6 +1462,9 @@ static const struct language wordlist[] =
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
const struct language *
|
const struct language *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -111,6 +111,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
const char *
|
const char *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -97,6 +97,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct resword *
|
struct resword *
|
||||||
is_reserved_word (str, len)
|
is_reserved_word (str, len)
|
||||||
|
|||||||
@@ -83,6 +83,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
const char *
|
const char *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -83,6 +83,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
const char *
|
const char *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -130,6 +130,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
const char *
|
const char *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
@@ -85,6 +85,9 @@ hash (str, len)
|
|||||||
|
|
||||||
#ifdef __GNUC__
|
#ifdef __GNUC__
|
||||||
__inline
|
__inline
|
||||||
|
#ifdef __GNUC_STDC_INLINE__
|
||||||
|
__attribute__ ((__gnu_inline__))
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
struct resword *
|
struct resword *
|
||||||
in_word_set (str, len)
|
in_word_set (str, len)
|
||||||
|
|||||||
Reference in New Issue
Block a user