@@ -1,9 +1,7 @@ /* - * Copyright (c) 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, - * 2018, 2019, 2020 - * Jonathan Schleifer + * Copyright (c) 2008-2021 Jonathan Schleifer * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in @@ -270,10 +268,19 @@ # else # define OBJC_M68K_ARG(type, name, reg) \ register type reg_##name __asm__(#reg); \ type name = reg_##name; # endif + +extern bool objc_init(unsigned int, struct objc_libc *); +# ifdef HAVE_SJLJ_EXCEPTIONS +# define __gnu_objc_personality(version, actions, exClass, ex, ctx) \ + __gnu_objc_personality_sj0(version, actions, *exClass, ex, ctx) +# else +# define __gnu_objc_personality(version, actions, exClass, ex, ctx) \ + __gnu_objc_personality_v0(version, actions, *exClass, ex, ctx) +# endif #endif extern void objc_register_all_categories(struct objc_symtab *_Nonnull); extern struct objc_category *_Nullable *_Nullable objc_categories_for_class(Class _Nonnull);