compile error on Python 3.8 in objc_msgSendSuper

Issue #274 resolved
Jason R. Coombs created an issue

Attempting to install PyObjC 5.2 on Python 3.8 with macOS 10.14.6 and XCode 11.0, I get this error:

jaraco@nasukawa ~ $ .local/pipx/venvs/xonsh/bin/python -m pip install pyobjc-core                                                       
Collecting pyobjc-core
  Using cached https://files.pythonhosted.org/packages/d3/f5/07579f2986f2eb639932626f69a082598f5e6d4535e1f54a331d9efa97d7/pyobjc-core-5.2.tar.gz
Building wheels for collected packages: pyobjc-core
  Building wheel for pyobjc-core (setup.py) ... error
  Running setup.py clean for pyobjc-core
  ERROR: Command errored out with exit status 1:
   command: /Users/jaraco/.local/pipx/venvs/xonsh/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/setup.py'"'"'; __file__='"'"'/private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-wheel-r7l5hrht --python-tag cp38
       cwd: /private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/
  Complete output (195 lines):
  running bdist_wheel
  running build
  running build_py
  Overriding build_packages to copy PyObjCTest
  creating build
  creating build/lib.macosx-10.9-x86_64-3.8
  creating build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_bridges.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_protocols.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_sequence.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_nsset.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_pycoder.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_lazyimport.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_nsstring.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_framework.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_nsdecimal.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_properties.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/__init__.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_callable_docstr.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_context.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_locking.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_descriptors.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_bridgesupport.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_nsdictionary.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_pythonify.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_nsarray.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_nsobject.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_category.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_compat.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_mapping.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_dyld.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  copying Lib/objc/_convenience_nsdata.py -> build/lib.macosx-10.9-x86_64-3.8/objc
  creating build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
  copying Lib/PyObjCTools/Signals.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
  copying Lib/PyObjCTools/TestSupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
  copying Lib/PyObjCTools/__init__.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
  copying Lib/PyObjCTools/KeyValueCoding.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
  copying Lib/PyObjCTools/MachSignals.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
  creating build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_voidpointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_specialtypecodes_unichar.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test2_filepointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_fsref.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_methodedits.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_bundleFunctions.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_specialtypecodes_struct.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_dict_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_callbacks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_unicode.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_weakref.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_testsupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_protocol.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_methods.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_objcpointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_inspect_signatures.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_archiving_interop.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_dyld.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_copying.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_nsdate_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_metadata_inheritance.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_assocations.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_classandinst.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_archiving_secure_interop.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_splitsig.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_pickling_objc.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_pickle.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_clinmeth.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test3_filepointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_bridges.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_convenience.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_metadata_function.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_version_support.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_bundleVariables.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test3_dict_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_list_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_blocks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_array_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_allocatebuffer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_deprecations.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_synthesize.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_propertiesforclass.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_specialtypecodes_charbyte.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_varargs.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_usekvo.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_metadata.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_exceptions.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_hidden_selector.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/__init__.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_bridgesupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_keyvalue.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_specialtypecodes_nsbool.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_subclass.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test2_dict_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_nsdecimal.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_pointer_compat.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_set_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_NULL.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_protocolNamed.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_signatures.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_classhooks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_conversion.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_python_method.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_arrays.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_metadata_py2py.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_set_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_methods2.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_methres.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/fnd.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_initialized.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_method_prototypes.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_specialtypecodes_charint.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/loader.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_keyvaluecoding.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_metadata_py.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_default_selector.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_objc.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_structs.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test3_protocol.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_corefoundation.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_identity.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_compat.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_imp.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test3_typecheck.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_regr.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_nsdata.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_outputinitializer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_set_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_locking.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/helper_bridgesupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_archive_python.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_array_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_object_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_context.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_structpointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_lazy_import.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/dejagnu.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_number_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_dict_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_methodlookup.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_ivar.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_descriptors.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_protected.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_callable_docstr.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_framework.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_ctests.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test2_dictviews.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/keyvaluehelper.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_sockaddr.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_keyvalue_prop.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_constants.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_posing.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_bridged_classes.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_metadata_imp.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_methodaccess.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_opaque.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_leaks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  copying PyObjCTest/test_specialtypecodes_methdef.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
  running build_ext
  building 'objc._objc' extension
  creating build/temp.macosx-10.9-x86_64-3.8
  creating build/temp.macosx-10.9-x86_64-3.8/Modules
  creating build/temp.macosx-10.9-x86_64-3.8/Modules/objc
  creating build/temp.macosx-10.9-x86_64-3.8/libffi-src
  creating build/temp.macosx-10.9-x86_64-3.8/libffi-src/powerpc
  creating build/temp.macosx-10.9-x86_64-3.8/libffi-src/x86
  gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/jaraco/.local/pipx/venvs/xonsh/include -I/Library/Frameworks/Python.framework/Versions/3.8/include/python3.8 -c Modules/objc/OC_PythonData.m -o build/temp.macosx-10.9-x86_64-3.8/Modules/objc/OC_PythonData.o -g -fexceptions -Wall -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -W -Wpointer-arith -Wmissing-declarations -Wnested-externs -W -Wno-import -Wno-unknown-pragmas -Wshorten-64-to-32 -Ilibffi-src/include -Ilibffi-src/powerpc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DPyObjC_BUILD_RELEASE=1015
  gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/jaraco/.local/pipx/venvs/xonsh/include -I/Library/Frameworks/Python.framework/Versions/3.8/include/python3.8 -c Modules/objc/objc_support.m -o build/temp.macosx-10.9-x86_64-3.8/Modules/objc/objc_support.o -g -fexceptions -Wall -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -W -Wpointer-arith -Wmissing-declarations -Wnested-externs -W -Wno-import -Wno-unknown-pragmas -Wshorten-64-to-32 -Ilibffi-src/include -Ilibffi-src/powerpc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DPyObjC_BUILD_RELEASE=1015
  gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/jaraco/.local/pipx/venvs/xonsh/include -I/Library/Frameworks/Python.framework/Versions/3.8/include/python3.8 -c Modules/objc/helpers-foundation-nscoder.m -o build/temp.macosx-10.9-x86_64-3.8/Modules/objc/helpers-foundation-nscoder.o -g -fexceptions -Wall -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -W -Wpointer-arith -Wmissing-declarations -Wnested-externs -W -Wno-import -Wno-unknown-pragmas -Wshorten-64-to-32 -Ilibffi-src/include -Ilibffi-src/powerpc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DPyObjC_BUILD_RELEASE=1015
  Modules/objc/helpers-foundation-nscoder.m:335:37: error: too many arguments to function call, expected 0, have 4
              (void)objc_msgSendSuper(&super,
                    ~~~~~~~~~~~~~~~~~ ^~~~~~~
  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/message.h:66:1: note: 'objc_msgSendSuper' declared here
  OBJC_EXPORT void
  ^
  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:236:25: note: expanded from macro 'OBJC_EXPORT'
  #   define OBJC_EXPORT  OBJC_EXTERN OBJC_VISIBLE
                          ^
  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:225:28: note: expanded from macro 'OBJC_EXTERN'
  #       define OBJC_EXTERN extern
                             ^
  Modules/objc/helpers-foundation-nscoder.m:451:37: error: too many arguments to function call, expected 0, have 5
              (void)objc_msgSendSuper(&super,
                    ~~~~~~~~~~~~~~~~~ ^~~~~~~
  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/message.h:66:1: note: 'objc_msgSendSuper' declared here
  OBJC_EXPORT void
  ^
  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:236:25: note: expanded from macro 'OBJC_EXPORT'
  #   define OBJC_EXPORT  OBJC_EXTERN OBJC_VISIBLE
                          ^
  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:225:28: note: expanded from macro 'OBJC_EXTERN'
  #       define OBJC_EXTERN extern
                             ^
  2 errors generated.
  error: command 'gcc' failed with exit status 1
  ----------------------------------------
  ERROR: Failed building wheel for pyobjc-core
Failed to build pyobjc-core
Installing collected packages: pyobjc-core
  Running setup.py install for pyobjc-core ... error
    ERROR: Command errored out with exit status 1:
     command: /Users/jaraco/.local/pipx/venvs/xonsh/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/setup.py'"'"'; __file__='"'"'/private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-record-md49d7c0/install-record.txt --single-version-externally-managed --compile --install-headers /Users/jaraco/.local/pipx/venvs/xonsh/include/site/python3.8/pyobjc-core
         cwd: /private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/
    Complete output (195 lines):
    running install
    running build
    running build_py
    Overriding build_packages to copy PyObjCTest
    creating build
    creating build/lib.macosx-10.9-x86_64-3.8
    creating build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_bridges.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_protocols.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_sequence.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_nsset.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_pycoder.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_lazyimport.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_nsstring.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_framework.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_nsdecimal.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_properties.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/__init__.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_callable_docstr.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_context.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_locking.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_descriptors.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_bridgesupport.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_nsdictionary.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_pythonify.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_nsarray.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_nsobject.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_category.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_compat.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_mapping.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_dyld.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    copying Lib/objc/_convenience_nsdata.py -> build/lib.macosx-10.9-x86_64-3.8/objc
    creating build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
    copying Lib/PyObjCTools/Signals.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
    copying Lib/PyObjCTools/TestSupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
    copying Lib/PyObjCTools/__init__.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
    copying Lib/PyObjCTools/KeyValueCoding.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
    copying Lib/PyObjCTools/MachSignals.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTools
    creating build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_voidpointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_specialtypecodes_unichar.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test2_filepointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_fsref.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_methodedits.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_bundleFunctions.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_specialtypecodes_struct.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_dict_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_callbacks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_unicode.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_weakref.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_testsupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_protocol.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_methods.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_objcpointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_inspect_signatures.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_archiving_interop.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_dyld.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_copying.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_nsdate_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_metadata_inheritance.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_assocations.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_classandinst.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_archiving_secure_interop.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_splitsig.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_pickling_objc.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_pickle.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_clinmeth.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test3_filepointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_bridges.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_convenience.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_metadata_function.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_version_support.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_bundleVariables.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test3_dict_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_list_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_blocks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_array_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_allocatebuffer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_deprecations.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_synthesize.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_propertiesforclass.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_specialtypecodes_charbyte.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_varargs.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_usekvo.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_metadata.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_exceptions.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_hidden_selector.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/__init__.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_bridgesupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_keyvalue.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_specialtypecodes_nsbool.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_subclass.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test2_dict_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_nsdecimal.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_pointer_compat.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_set_interface.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_NULL.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_protocolNamed.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_signatures.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_classhooks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_conversion.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_python_method.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_arrays.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_metadata_py2py.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_set_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_methods2.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_methres.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/fnd.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_initialized.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_method_prototypes.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_specialtypecodes_charint.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/loader.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_keyvaluecoding.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_metadata_py.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_default_selector.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_objc.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_structs.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test3_protocol.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_corefoundation.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_identity.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_compat.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_imp.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test3_typecheck.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_regr.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_nsdata.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_outputinitializer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_set_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_locking.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/helper_bridgesupport.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_archive_python.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_array_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_object_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_context.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_structpointer.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_lazy_import.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/dejagnu.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_number_proxy.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_dict_property.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_methodlookup.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_ivar.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_descriptors.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_protected.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_callable_docstr.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_framework.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_ctests.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test2_dictviews.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/keyvaluehelper.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_sockaddr.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_keyvalue_prop.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_constants.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_posing.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_bridged_classes.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_metadata_imp.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_methodaccess.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_opaque.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_leaks.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    copying PyObjCTest/test_specialtypecodes_methdef.py -> build/lib.macosx-10.9-x86_64-3.8/PyObjCTest
    running build_ext
    building 'objc._objc' extension
    creating build/temp.macosx-10.9-x86_64-3.8
    creating build/temp.macosx-10.9-x86_64-3.8/Modules
    creating build/temp.macosx-10.9-x86_64-3.8/Modules/objc
    creating build/temp.macosx-10.9-x86_64-3.8/libffi-src
    creating build/temp.macosx-10.9-x86_64-3.8/libffi-src/powerpc
    creating build/temp.macosx-10.9-x86_64-3.8/libffi-src/x86
    gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/jaraco/.local/pipx/venvs/xonsh/include -I/Library/Frameworks/Python.framework/Versions/3.8/include/python3.8 -c Modules/objc/OC_PythonData.m -o build/temp.macosx-10.9-x86_64-3.8/Modules/objc/OC_PythonData.o -g -fexceptions -Wall -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -W -Wpointer-arith -Wmissing-declarations -Wnested-externs -W -Wno-import -Wno-unknown-pragmas -Wshorten-64-to-32 -Ilibffi-src/include -Ilibffi-src/powerpc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DPyObjC_BUILD_RELEASE=1015
    gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/jaraco/.local/pipx/venvs/xonsh/include -I/Library/Frameworks/Python.framework/Versions/3.8/include/python3.8 -c Modules/objc/objc_support.m -o build/temp.macosx-10.9-x86_64-3.8/Modules/objc/objc_support.o -g -fexceptions -Wall -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -W -Wpointer-arith -Wmissing-declarations -Wnested-externs -W -Wno-import -Wno-unknown-pragmas -Wshorten-64-to-32 -Ilibffi-src/include -Ilibffi-src/powerpc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DPyObjC_BUILD_RELEASE=1015
    gcc -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -arch x86_64 -g -I/Users/jaraco/.local/pipx/venvs/xonsh/include -I/Library/Frameworks/Python.framework/Versions/3.8/include/python3.8 -c Modules/objc/helpers-foundation-nscoder.m -o build/temp.macosx-10.9-x86_64-3.8/Modules/objc/helpers-foundation-nscoder.o -g -fexceptions -Wall -Wstrict-prototypes -Wmissing-prototypes -Wformat=2 -W -Wpointer-arith -Wmissing-declarations -Wnested-externs -W -Wno-import -Wno-unknown-pragmas -Wshorten-64-to-32 -Ilibffi-src/include -Ilibffi-src/powerpc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -DPyObjC_BUILD_RELEASE=1015
    Modules/objc/helpers-foundation-nscoder.m:335:37: error: too many arguments to function call, expected 0, have 4
                (void)objc_msgSendSuper(&super,
                      ~~~~~~~~~~~~~~~~~ ^~~~~~~
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/message.h:66:1: note: 'objc_msgSendSuper' declared here
    OBJC_EXPORT void
    ^
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:236:25: note: expanded from macro 'OBJC_EXPORT'
    #   define OBJC_EXPORT  OBJC_EXTERN OBJC_VISIBLE
                            ^
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:225:28: note: expanded from macro 'OBJC_EXTERN'
    #       define OBJC_EXTERN extern
                               ^
    Modules/objc/helpers-foundation-nscoder.m:451:37: error: too many arguments to function call, expected 0, have 5
                (void)objc_msgSendSuper(&super,
                      ~~~~~~~~~~~~~~~~~ ^~~~~~~
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/message.h:66:1: note: 'objc_msgSendSuper' declared here
    OBJC_EXPORT void
    ^
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:236:25: note: expanded from macro 'OBJC_EXPORT'
    #   define OBJC_EXPORT  OBJC_EXTERN OBJC_VISIBLE
                            ^
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/usr/include/objc/objc-api.h:225:28: note: expanded from macro 'OBJC_EXTERN'
    #       define OBJC_EXTERN extern
                               ^
    2 errors generated.
    error: command 'gcc' failed with exit status 1
    ----------------------------------------
ERROR: Command errored out with exit status 1: /Users/jaraco/.local/pipx/venvs/xonsh/bin/python -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/setup.py'"'"'; __file__='"'"'/private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-install-z1uj6pxr/pyobjc-core/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /private/var/folders/qs/5jptvz2x7_gblx4kc3qj005800n8zm/T/pip-record-md49d7c0/install-record.txt --single-version-externally-managed --compile --install-headers /Users/jaraco/.local/pipx/venvs/xonsh/include/site/python3.8/pyobjc-core Check the logs for full command output

Comments (11)

  1. Jason R. Coombs reporter

    I see there’s a branch for pyobjc 6, where this issue (and probably others) are being addressed. What do you recommend for someone attempting to install PyObjC for Python 3.8? Would you consider building/uploading wheels for Python 3.8?

  2. Jason R. Coombs reporter

    Dang. It looks like even after uploading every package in the repo, it’s still missing “Metal”:

    ERROR: No matching distribution found for pyobjc-framework-Metal>=6.0a0 (from pyobjc-framework-MetalKit==6.0a0; platform_release >= "15.0"->pyobjc->richxerox>=1.0.1; sys_platform == "darwin"->jaraco.clipboard)
    

  3. Jason R. Coombs reporter

    I removed MetalKit from `pyobjc/setup.py` and re-uploaded the wheel for that and now I’m able to install pyobjc on Python 3.8.

  4. Ronald Oussoren repo owner

    The issue with missing Metal is fixed as of earlier today.

    The error you’re seeing with Python 3.8 is due to changes in Xcode 11. A workaround is to set “OBJC_OLD_DISPATCH_PROTOTYPES=1” in the shell environment before building wheels (when using PyObjC 5.x). The 6.x branch contains a better fix.

  5. Jason R. Coombs reporter

    The issue with missing Metal is fixed as of earlier today.

    Thanks for this. I’ve uploaded a 3.8 wheel for MetalKit and re-uploaded the wheel for pyobjc, so anybody looking for pyobjc for Python 3.8 can grab it from devpi.

    Thanks also for mentioning the workaround. If anybody needs pyobjc 5.2 wheels for Python 3.8, let me know and I’ll use that workaround to upload wheels to devpi.

    I believe that closes this issue. Thanks Ronald for the quick response!

  6. Ronald Oussoren repo owner

    The current tip of the default branch should now build with Xcode 11. I’ll probably push out a new release for PyObjC 5.x next weekend, including wheels for Python3.8.

    Before I do that I have to check if I have to do anything in the 5.x release to ensure that pip for Python 2.7 will not try to install to 6.x.

  7. Jason R. Coombs reporter

    I’m pretty sure there’s nothing in a 5.x release that you could do to prevent installs of 6.x… the thing you need in 6.x is the python_requires directive, which is present. Just be aware that if someone uses pip<9 on older Pythons, that will pull in 6.x, and there’s little you can do except guide the users to pin their pyobjc dependency if they’re using an old pip.

  8. Log in to comment