v69 -> v73b = XCode Errors

Monkey Targets Forums/iOS/v69 -> v73b = XCode Errors

rIKmAN(Posted 2013) [#1]
I am moving over from v69 to v73b as I want to use the new IAP stuff, however my project which builds fine on v69 fails miserably on v73b.

It compiles fine using v73b in HTML5, so I think it's something iOS specific.

It's something to do with the sound/music commands from the error log, and I was wondering if anyone knew what the problem might be or what has changed from v69-v73b that might be causing the error.

A test project compiled fine from v73b on iOS although it didn't have any music or sound in.

/Users/Rik/Desktop/my_project/my_project.build/ios/main.mm:2714:17: warning: incomplete implementation [-Wincomplete-implementation]
@implementation BBMonkeyViewController
                ^
/Users/Rik/Desktop/my_project/my_project.build/ios/main.h:80:1: note: method definition for 'shouldAutorotate' not found
-(BOOL)shouldAutorotate;
^
/Users/Rik/Desktop/my_project/my_project.build/ios/main.mm:4255:39: error: 'height' is a private member of 'gxtkGraphics'
                glReadPixels(x, bb_graphics_device->height-y ,1 ,1 ,GL_RGBA ,GL_UNSIGNED_BYTE ,pix);
                                                    ^
/Users/Rik/Desktop/my_project/my_project.build/ios/main.mm:2958:6: note: declared private here
        int height;
            ^
/Users/Rik/Desktop/my_project/my_project.build/ios/main.mm:4271:23: error: no member named 'music' in 'gxtkAudio'
                if(bb_audio_device->music)
                   ~~~~~~~~~~~~~~~  ^
/Users/Rik/Desktop/my_project/my_project.build/ios/main.mm:4273:21: error: no member named 'music' in 'gxtkAudio'
                        bb_audio_device->music.currentTime = timeMillis/1000.0;


Also as a side note, I get a few "unused variable" warnings and it tells me I can "add parenthesis to silence the warnings" which is fine.

Do these warning affect app store approval?
Is this a Monkey translation problem or something in my code that causes it in the first place, as I'm 99% sure I do not have any unused variables in my Monkey code.

Thanks.


rIKmAN(Posted 2013) [#2]
OK I'm an idiot, this was fixed by updating diddy to the latest from the repo. Doh!

I didn't realise I was even using diddy, but I was using the xml parser and forgot about it.


Zurrr(Posted 2013) [#3]
Your diddy issue solve but I would like to see a solution to the XCode warning above

I think, something has to do with missing parenthesis by trans

This is part of my code:
if drawStep=0 Or (drawStep=5 And win=0)


Produce this warning:
warning: '&&' within '||' [-Wlogical-op-parentheses]
if(m_drawStep==0 || m_drawStep==5 && m_win==0){


I do make a proper parenthesis but monkey trans don't do that. You can see and try the above code.


rIKmAN(Posted 2013) [#4]
I'm not sure what you mean mag, updating to the latest version of diddy fixed the XCode errors for me as well.
As I said I didn't realise I was using diddy but I was using the xml parser and forgot to update diddy, once I did all was fine.

As for your error, I'm not really sure, but try the parenthesis a few different ways like this and see if anything changes.
If (drawStep = 0) Or (drawStep = 5 And win = 0)
If (drawStep = 0) Or (drawStep = 5) And (win = 0)
If (drawStep = 0) Or ((drawStep = 5) And (win = 0))
etc
I do get some semantic warnings when compiling stuff in XCode to do with && within || and unused variables etc, but nothing that stops it compiling and running.


Grey Alien(Posted 2014) [#5]
Just wanted to add that I also get the same semantic warnings when doing:

if a or (b and c)

When I look at the xcode created it seems bad as it's basically the same as going
if a or b and c

If the code does the and first then it's OK, but if it does the OR first then there could be a different unexpected effect!