Subject: gnucash fails to build

From: Chris Marusich <[email-masked]>
Date: Sun, 25 Feb 2018 00:29:12 +0100

Hi,

Somewhere between these two Hydra evaluations, gnucash began failing to
build:

First failed job: https://hydra.gnu.org/build/2507218#tabs-details

Last successful job: https://hydra.gnu.org/build/2460526#tabs-details

Job history (master):
https://hydra.gnu.org/job/gnu/master/gnucash-2.6.19.x86_64-linux

Job history (core-updates):
https://hydra.gnu.org/job/gnu/core-updates/gnucash-2.6.19.x86_64-linux/all

Earliest failure on core-updates was on 2018-01-12:
https://hydra.gnu.org/build/2437575/nixlog/1/tail-reload

I am able to reproduce the failure on x86_64-linux GuixSD.  The error
is:

https://hydra.gnu.org/build/2507218/nixlog/1/tail-reload
--8<---------------cut here---------------start------------->8---
...

  CXX      Source/JavaScriptCore/API/libjavascriptcoregtk_1_0_la-JSObjectRef.lo
  CXX      Source/JavaScriptCore/API/libjavascriptcoregtk_1_0_la-JSScriptRef.lo
  CXX      Source/JavaScriptCore/API/libjavascriptcoregtk_1_0_la-JSStringRef.lo
Source/JavaScriptCore/API/JSStringRef.cpp: In function ‘OpaqueJSString* JSStringCreateWithCharacters(const JSChar*, size_t)’:
Source/JavaScriptCore/API/JSStringRef.cpp:40:50: error: invalid conversion from ‘const JSChar* {aka const short unsigned int*}’ to ‘const UChar* {aka const char16_t*}’ [-fpermissive]
     return OpaqueJSString::create(chars, numChars).leakRef();
                                                  ^
In file included from Source/JavaScriptCore/API/JSStringRef.cpp:31:0:
Source/JavaScriptCore/API/OpaqueJSString.h:49:39: note:   initializing argument 1 of ‘static WTF::PassRefPtr<OpaqueJSString> OpaqueJSString::create(const UChar*, unsigned int)’
     static PassRefPtr<OpaqueJSString> create(const UChar* characters, unsigned length)
                                       ^
Source/JavaScriptCore/API/JSStringRef.cpp: In function ‘OpaqueJSString* JSStringCreateWithCharactersNoCopy(const JSChar*, size_t)’:
Source/JavaScriptCore/API/JSStringRef.cpp:65:83: error: invalid conversion from ‘const JSChar* {aka const short unsigned int*}’ to ‘const UChar* {aka const char16_t*}’ [-fpermissive]
     return OpaqueJSString::create(StringImpl::createWithoutCopying(chars, numChars)).leakRef();
                                                                                   ^
In file included from ./Source/WTF/wtf/text/WTFString.h:29:0,
                 from Source/JavaScriptCore/API/OpaqueJSString.h:31,
                 from Source/JavaScriptCore/API/JSStringRef.cpp:31:
./Source/WTF/wtf/text/StringImpl.h:393:54: note:   initializing argument 1 of ‘static WTF::PassRef<WTF::StringImpl> WTF::StringImpl::createWithoutCopying(const UChar*, unsigned int)’
     WTF_EXPORT_STRING_API static PassRef<StringImpl> createWithoutCopying(const UChar* characters, unsigned length);
                                                      ^
Source/JavaScriptCore/API/JSStringRef.cpp: In function ‘const JSChar* JSStringGetCharactersPtr(JSStringRef)’:
Source/JavaScriptCore/API/JSStringRef.cpp:86:30: error: invalid conversion from ‘const UChar* {aka const char16_t*}’ to ‘const JSChar* {aka const short unsigned int*}’ [-fpermissive]
     return string->characters();
                              ^
make[1]: *** [GNUmakefile:70161: Source/JavaScriptCore/API/libjavascriptcoregtk_1_0_la-JSStringRef.lo] Error 1
make[1]: Leaving directory '/tmp/guix-build-webkitgtk-gtk2-2.4.11.drv-0/webkitgtk-2.4.11'
make: *** [GNUmakefile:25837: all] Error 2
phase `build' failed after 238.0 seconds
builder for `/gnu/store/dsr4wdnmnyacyl662gigfwv7v5qa7zk9-webkitgtk-gtk2-2.4.11.drv' failed with exit code 1
@ build-failed /gnu/store/dsr4wdnmnyacyl662gigfwv7v5qa7zk9-webkitgtk-gtk2-2.4.11.drv - 1 builder for `/gnu/store/dsr4wdnmnyacyl662gigfwv7v5qa7zk9-webkitgtk-gtk2-2.4.11.drv' failed with exit code 1
--8<---------------cut here---------------end--------------->8---

I'm guessing that maybe it broke on core-updates some time before
2018-01-12.  I'll see if I can "git bisect" to find the commit that
introduced the failure.

-- 
Chris