<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Thank you all for your replies and suggestions.<div class=""><br class=""></div><div class=""><div class=""> I could go in to more detail, but here’s a summary breakdown of the warnings and what they connect to. (There are 3 warnings included in all this which I am aware of which are not necessarily 64 bit related)</div><div class=""><br class=""></div><div class=""><div class="">Summary:</div><div class="">- There are 96 warnings found in files inside of the CLucene (clucene/CLucene) folder</div><div class="">- There are 185 warnings which are in the externals/sword folders.</div><div class="">- There are 32 warnings which are in the externals/CocoaHTTPServer folder.</div><div class="">- There are 10 warnings which are in the Classes folder. These seem to be</div><div class=""> written especially for PocketSword and are not part of libraries or frameworks.</div><div class=""><br class=""></div><div class=""> From what I’m seeing so far, all the warnings are mostly repeating variations of the same thing which is that there is a datatype which in 64 bit runtime is a 64 bit quantity and the code is assigning it to an “int” value which is a 32 bit quantity. The data type “long” is a 64 bit quantity, for example, and so a warning is thrown every time it’s assigned to an “int” datatype which remains a 32 bit quantity when running in a 64 bit runtime. Here’s a link which shows Apple’s documentation regarding how their data types change based on the 32 or 64 runtime. </div><div class=""><br class=""></div><div class=""><a href="https://developer.apple.com/library/content/documentation/General/Conceptual/CocoaTouch64BitGuide/Major64-BitChanges/Major64-BitChanges.html" class="">https://developer.apple.com/library/content/documentation/General/Conceptual/CocoaTouch64BitGuide/Major64-BitChanges/Major64-BitChanges.html</a></div><div class=""><br class=""></div><div class="">If I’m mistaken though, please somebody let me know.</div><div class=""><br class=""></div><div class=""> From all the online research I’ve been doing trying to figure the problems out, it’s sorta leading me to the question "Has the SWORD framework been updated to be 64 bit compatible?” I’ve searched the Sword project wiki and searched what I can of the mailing list, but I can’t find any definitive answer.</div><div class=""><br class=""></div><div class=""> Also, in case it’s not known, Windows in comparison to Mac/Unix/Linux uses a different 64 bit convention. Mac (including iPhone) uses LP64. So, long or long int, for example, is a 64-bit quantity, but for Windows it remains a 32-bit quantity even when run in the 64-bit runtime. So, is it possible that the SWORD framework does not have the same warnings that I get when compiled on a computer running the Windows OS? </div><div class=""><br class=""></div><div class=""> I get the impression that these warnings can be ignored and the program work as long as the values that the long, unsigned long, or etc. hold never exceed a 32-bit size? and errors only occur if they are exceeded?</div><div class=""><br class=""></div><div class=""> I’m concerned about these 64-bit warnings because it’s my understanding that Apple requires apps to be 64-bit compatible and they vet each app for entry into the store. So, I don’t know how these warnings would be treated by them. I can see why Xcode or the compiler is treating them as warnings since they are apparantly correct in the 32-bit runtime. However, it seems that there is a “proper” way to convert the data types from one to another which works in both 32 and 64-bit runtimes? and since the code does not do that, Xcode assumes that it is either pre-64-bit code or that it is an erroneous typed line of code and hence gives a warning?</div><div class=""><br class=""></div><div class=""> Sorry, if I’m way off on any of this. If you’ve read all this, thank you, I know it’s a lot.</div><div class=""></div><div class=""><br class=""></div><div class="">-TS</div><div class=""><br class=""></div><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Oct 14, 2016, at 4:58 AM, Peter Von Kaehne <<a href="mailto:refdoc@gmx.net" class="">refdoc@gmx.net</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class=""><div style="font-family: Verdana;font-size: 12.0px;" class=""><div class="">
<div class=""><a href="https://developer.apple.com/library/content/documentation/Darwin/Conceptual/64bitPorting/building/building.html" class="">https://developer.apple.com/library/content/documentation/Darwin/Conceptual/64bitPorting/building/building.html</a></div>
<div class=""> </div>
<div class="">suggests that some flags are less useful than others in terms of warnings produced - some flags produce a plethora of spurious and irrelevant warnings</div>
<div class=""> </div>
<div class="">Is that maybe part of your problem?</div>
<div class=""> </div>
<div class="">Peter</div>
<div class="">
<div name="quote" style="margin:10px 5px 5px 10px; padding: 10px 0 10px 10px; border-left:2px solid #C3D9E5; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div style="margin:0 0 10px 0;" class=""><b class="">Gesendet:</b> Freitag, 14. Oktober 2016 um 12:15 Uhr<br class="">
<b class="">Von:</b> "Manfred Bergmann" <<a href="mailto:manfred.bergmann@me.com" class="">manfred.bergmann@me.com</a>><br class="">
<b class="">An:</b> "SWORD Developers' Collaboration Forum" <<a href="mailto:sword-devel@crosswire.org" class="">sword-devel@crosswire.org</a>><br class="">
<b class="">Betreff:</b> Re: [sword-devel] How do you make the Sword framework work in 64bit mode? (My compiler is giving me hundreds of warnings.)</div>
<div name="quoted-content" class="">
<div class="">
<div class="">I’m also having tons of warnings when compiling SWORD in Xcode for 64 bit.</div>
<div class="">The precision warnings can be ignored IMO. But due to the sheer number of warnings it’s very hard to detect warnings that shouldn’t be ignored.</div>
<div class=""> </div>
<div class="">Btw: there is a Objective-C wrapper for the SWORD library under bindings/objc which I maintain and use in Eloquent.</div>
<div class="">AFAIK some form of the wrapper in used in PS.</div>
<div class="">It would be great if efforts could be shared in using only one codebase.</div>
<div class=""> </div>
<div class=""> </div>
<div class=""> </div>
<div class="">Manfred</div>
<div class=""> </div>
<div class="">
<blockquote class="">
<div class="">Am 13.10.2016 um 22:30 schrieb TS <<a href="mailto:outofthecube@icloud.com" onclick="parent.window.location.href='outofthecube@icloud.com'; return false;" target="_blank" class="">outofthecube@icloud.com</a>>:</div>
<div class="">
<div class="">
<div class=""> So, Xcode gives me hundreds of warnings when I try to build for 64 bit mode. I've also tried searching the mailing list so I see that some people earlier in the year may be have seen the same warnings (for PocketSword), so I think I better understand why I've seen that some of the libraries were updated(I don't know if all were updated or ?). However, I'm still getting errors and some of it is in the Sword framework. My impression so far of what's going on is that Xcode is telling me is that there are datatypes which are not being converted properly. I think this is happening due to things like "int" and "long" not occupying the same amount of space or something like they use to do in 32 bit and so need a casting in order to be converted properly?</div>
<div class=""> An example is listkey.h at line 147 in which "index" is a "long", but then setToElement is for an "int".</div>
<div class=""> Another is swbuf.h at line 448 "...<span style="color: rgb(187,44,162);" class="">const</span><span class=""> { </span><span style="color: rgb(187,44,162);" class="">unsigned</span><span class=""> </span><span style="color: rgb(187,44,162);" class="">int</span><span class=""> psize = </span><span style="color: rgb(61,29,129);" class="">strlen</span><span class="">(postfix); ..." <span style="font-size: 15.0px;font-family: "Helvetica Neue" , Helvetica , sans-serif;" class="">where Xcode warns that there's a loss of precision. That an unsigned long is converting to an unsigned int. I think that unsigned long occupies 64 bits when run in 64 bit mode, but the int stays in 32 bits when run in 64 bit mode.</span></span></div>
<div class=""><span class=""><span style="font-size: 15.0px;font-family: "Helvetica Neue" , Helvetica , sans-serif;" class=""> I have compared the Sword framework that it's using against the last stable one and there's doesn't seem to be changes to address the issues I'm seeing.</span></span></div>
<div class=""><span class=""><span style="font-size: 15.0px;font-family: "Helvetica Neue" , Helvetica , sans-serif;" class=""> Any suggestions on how to proceed?</span></span></div>
<div class=""> </div>
<div class=""><span class=""><span style="font-size: 15.0px;font-family: "Helvetica Neue" , Helvetica , sans-serif;" class="">-TS</span></span></div>
</div>
_______________________________________________<br class="">
sword-devel mailing list: <a href="mailto:sword-devel@crosswire.org" onclick="parent.window.location.href='sword-devel@crosswire.org'; return false;" target="_blank" class="">sword-devel@crosswire.org</a><br class="">
<a href="http://www.crosswire.org/mailman/listinfo/sword-devel" target="_blank" class="">http://www.crosswire.org/mailman/listinfo/sword-devel</a><br class="">
Instructions to unsubscribe/change your settings at above page</div>
</blockquote>
</div>
<br class="">
_______________________________________________ sword-devel mailing list: <a href="mailto:sword-devel@crosswire.org" class="">sword-devel@crosswire.org</a> <a href="http://www.crosswire.org/mailman/listinfo/sword-devel" target="_blank" class="">http://www.crosswire.org/mailman/listinfo/sword-devel</a> Instructions to unsubscribe/change your settings at above page</div>
</div>
</div>
</div>
</div></div></div>
_______________________________________________<br class="">sword-devel mailing list: <a href="mailto:sword-devel@crosswire.org" class="">sword-devel@crosswire.org</a><br class=""><a href="http://www.crosswire.org/mailman/listinfo/sword-devel" class="">http://www.crosswire.org/mailman/listinfo/sword-devel</a><br class="">Instructions to unsubscribe/change your settings at above page</div></blockquote></div><br class=""></div></div></div></body></html>