gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

libobjc2 1.8.1 test failures while building on Canonical's buildfarm


From: Ivan Vučica
Subject: libobjc2 1.8.1 test failures while building on Canonical's buildfarm
Date: Sun, 27 Dec 2015 00:11:21 +0000

Hi David,

I've spent some time trying to package libobjc2 again. I took libobjc2-1.8.1 and went ahead with that. While the build seems to work fine for me locally, it's failing on Canonical's systems:

https://launchpadlibrarian.net/232000659/buildlog_ubuntu-trusty-amd64.libobjc2_1.8.1-3_BUILDING.txt.gz

25/40 Test #25: PropertyIntrospectionTest2 .............***Exception: Other  0.36 sec
PropertyIntrospectionTest2: /«PKGBUILDDIR»/Test/PropertyIntrospectionTest2.m:258: void testPropertyForProperty(objc_property_t, const char *, const char *, objc_property_attribute_t *, unsigned int): Assertion `strcmp(types, attrs) == 0' failed.

      Start 26: PropertyIntrospectionTest2_optimised
26/40 Test #26: PropertyIntrospectionTest2_optimised ...***Exception: Other  0.17 sec
PropertyIntrospectionTest2_optimised: /«PKGBUILDDIR»/Test/PropertyIntrospectionTest2.m:258: void testPropertyForProperty(objc_property_t, const char *, const char *, objc_property_attribute_t *, unsigned int): Assertion `__extension__ ({ size_t __s1_len, __s2_len; (__builtin_constant_p (types) && __builtin_constant_p (attrs) && (__s1_len = __builtin_strlen (types), __s2_len = __builtin_strlen (attrs), (!((size_t)(const void *)((types) + 1) - (size_t)(const void *)(types) == 1) || __s1_len >= 4) && (!((size_t)(const void *)((attrs) + 1) - (size_t)(const void *)(attrs) == 1) || __s2_len >= 4)) ? __builtin_strcmp (types, attrs) : (__builtin_constant_p (types) && ((size_t)(const void *)((types) + 1) - (size_t)(const void *)(types) == 1) && (__s1_len = __builtin_strlen (types), __s1_len < 4) ? (__builtin_constant_p (attrs) && ((size_t)(const void *)((attrs) + 1) - (size_t)(const void *)(attrs) == 1) ? __builtin_strcmp (types, attrs) : (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (attrs); int __result = (((const unsigned char *) (const char *) (types))[0] - __s2[0]); if (__s1_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) (types))[1] - __s2[1]); if (__s1_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) (types))[2] - __s2[2]); if (__s1_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) (types))[3] - __s2[3]); } } __result; }))) : (__builtin_constant_p (attrs) && ((size_t)(const void *)((attrs) + 1) - (size_t)(const void *)(attrs) == 1) && (__s2_len = __builtin_strlen (attrs), __s2_len < 4) ? (__builtin_constant_p (types) && ((size_t)(const void *)((types) + 1) - (size_t)(const void *)(types) == 1) ? __builtin_strcmp (types, attrs) : (- (__extension__ ({ const unsigned char *__s2 = (const unsigned char *) (const char *) (types); int __result = (((const unsigned char *) (const char *) (attrs))[0] - __s2[0]); if (__s2_len > 0 && __result == 0) { __result = (((const unsigned char *) (const char *) (attrs))[1] - __s2[1]); if (__s2_len > 1 && __result == 0) { __result = (((const unsigned char *) (const char *) (attrs))[2] - __s2[2]); if (__s2_len > 2 && __result == 0) __result = (((const unsigned char *) (const char *) (attrs))[3] - __s2[3]); } } __result; })))) : __builtin_strcmp (types, attrs)))); }) == 0' failed.


Even though I tried to isolate the local build using pbuilder, I may have still inadvertently built local libobjc2 with a development version of clang/llvm 3.7.0; the code built on the build farm uses the clang-3.5 package (the newest available).

(1) Is this a known and expected bug in clang-3.5?
(2) Is clang-3.5 actually unsupported? 
(3) Can I work around these failures somehow?
(4) Can I disable tests somehow, and instead declare "this code is known to be broken; use at your own risk"? (I'd do this only for versions of Ubuntu that don't ship with a sufficiently new clang.)
(5) If not I could upload debian source package for whatever minimum version of clang you believe is required for libobjc2 1.8.1 and have Canonical's build farm sort things out. What version is required?
(I'd prefer not to put a whole compiler into the PPA unless absolutely required.)

Thanks!

reply via email to

[Prev in Thread] Current Thread [Next in Thread]