summaryrefslogtreecommitdiff
path: root/src/regex.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2013-09-21 23:22:05 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2013-09-21 23:22:05 -0700
commitc6cfd9101e70010bcd4ba6831b0d42ebc84728fe (patch)
treef0ef00d745ba5260d9b369ec1946bdd43e47de53 /src/regex.c
parent3a4be55b4d956799201169bb4ba49c0e948eec32 (diff)
Fix syntax.h bug introduced by recent INLINE change.
syntax.h defined an extern inline function SYNTAX_ENTRY that was conditionally compiled one way in some modules, and a different way in others. This doesn't work with extern inline functions, which must have the same definition in all modules, because the defining code might be shared across modules, depending on the implementation. Symptoms reported by Martin Rudalics in: http://lists.gnu.org/archive/html/emacs-devel/2013-09/msg00414.html * regex.c, syntax.c (SYNTAX_ENTRY_VIA_PROPERTY): Remove. (SYNTAX, SYNTAX_ENTRY, SYNTAX_WITH_FLAGS): New macros, overriding the corresponding functions in syntax.h. * syntax.h (syntax_property_entry, syntax_property_with_flags) (syntax_property): New inline functions. (SYNTAX_ENTRY, SYNTAX_WITH_FLAGS, SYNTAX): Rewrite in terms of these new functions.
Diffstat (limited to 'src/regex.c')
-rw-r--r--src/regex.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/regex.c b/src/regex.c
index 1befececd2..4ab98bbf09 100644
--- a/src/regex.c
+++ b/src/regex.c
@@ -131,12 +131,12 @@
# include "character.h"
# include "buffer.h"
-/* Make syntax table lookup grant data in gl_state. */
-# define SYNTAX_ENTRY_VIA_PROPERTY
-
# include "syntax.h"
# include "category.h"
+/* Make syntax table lookup grant data in gl_state. */
+# define SYNTAX(c) syntax_property (c, 1)
+
# ifdef malloc
# undef malloc
# endif