summaryrefslogtreecommitdiff
path: root/src/alloc.c
diff options
context:
space:
mode:
authorStefan Kangas <stefan@marxist.se>2021-12-03 06:30:26 +0100
committerStefan Kangas <stefan@marxist.se>2021-12-03 06:30:26 +0100
commitc66eb524537f98667507024e5f21e0b24038c964 (patch)
treea1eb41cf4585796fb43a0b2c51b177cbb1bf9b37 /src/alloc.c
parent67191f7eee3f2a4e83897c3d820f8c13c629dedb (diff)
parent9c222b9c1a7f91497a37567b4d7de3a511fff069 (diff)
downloademacs-c66eb524537f98667507024e5f21e0b24038c964.tar.gz
emacs-c66eb524537f98667507024e5f21e0b24038c964.tar.bz2
emacs-c66eb524537f98667507024e5f21e0b24038c964.zip
Merge from origin/emacs-28
9c222b9c1a Port to C compilers that lack size-0 arrays fed35a8951 Port emacsclient to Solaris 10 f35d6a9c73 * CONTRIBUTE: Improve commit message instructions e0ee1d003a Work around IBM XL C compiler bug 6b99b6eb8b * admin/make-tarball.txt: Various clarifications. bbf4140091 * admin/diff-tar-files: Don't assume .tar.gz. 0a50ad11db * lisp/tab-bar.el (tab-bar-close-other-tabs): Fix regression.
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/alloc.c b/src/alloc.c
index f8908c91dba..55c30847bbf 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -3160,26 +3160,26 @@ cleanup_vector (struct Lisp_Vector *vector)
module_finalize_function (function);
}
#endif
- else if (NATIVE_COMP_FLAG
- && PSEUDOVECTOR_TYPEP (&vector->header, PVEC_NATIVE_COMP_UNIT))
+#ifdef HAVE_NATIVE_COMP
+ else if (PSEUDOVECTOR_TYPEP (&vector->header, PVEC_NATIVE_COMP_UNIT))
{
struct Lisp_Native_Comp_Unit *cu =
PSEUDOVEC_STRUCT (vector, Lisp_Native_Comp_Unit);
unload_comp_unit (cu);
}
- else if (NATIVE_COMP_FLAG
- && PSEUDOVECTOR_TYPEP (&vector->header, PVEC_SUBR))
+ else if (PSEUDOVECTOR_TYPEP (&vector->header, PVEC_SUBR))
{
struct Lisp_Subr *subr =
PSEUDOVEC_STRUCT (vector, Lisp_Subr);
- if (!NILP (subr->native_comp_u[0]))
+ if (!NILP (subr->native_comp_u))
{
/* FIXME Alternative and non invasive solution to this
cast? */
xfree ((char *)subr->symbol_name);
- xfree (subr->native_c_name[0]);
+ xfree (subr->native_c_name);
}
}
+#endif
}
/* Reclaim space used by unmarked vectors. */
@@ -6785,15 +6785,17 @@ mark_object (Lisp_Object arg)
break;
case PVEC_SUBR:
+#ifdef HAVE_NATIVE_COMP
if (SUBR_NATIVE_COMPILEDP (obj))
{
set_vector_marked (ptr);
struct Lisp_Subr *subr = XSUBR (obj);
mark_object (subr->native_intspec);
- mark_object (subr->native_comp_u[0]);
- mark_object (subr->lambda_list[0]);
- mark_object (subr->type[0]);
+ mark_object (subr->native_comp_u);
+ mark_object (subr->lambda_list);
+ mark_object (subr->type);
}
+#endif
break;
case PVEC_FREE: