What could the problem with mini.c:5054 vtable be? - ipad

I am currently developing an iPad app with MonoTouch.
After a week development I finally got my iPad back for testing but now when I try to run the app on the iPad with the new version of monotouch (4.0) I get the following error:
Assertion at ../../../../mono/mini/mini.c:5054,
condition `vtable' not met
Stacktrace:
at System.TypeLoadException..ctor
(string,string) <0x00023> at
(wrapper runtime-invoke)
object.runtime_invoke_dynamic
(intptr,intptr,intptr,intptr)
<0xffffffff>
On the simulator runs fine. Cleaning and rebuilding the solution didn't help.
Any Ideas where I could start looking for the problem?
Thanks

I have seen this with one other users, and it was related to either linking a thumb library, or not rebuilding the solution entirely. If you are seeing this without this behaviour we will need you to file a bug attaching your solution and all the pertinent versions at http://monotouch.net/Support so we can work with you to determine why.

It has been very strange. I did some more tests and found the following: my original project was called FliteLevel1, the test that I tried next with only a label was called FliteLevel2. Both didn't work. Today I decided to make another test and I called it Test4. This new test worked OK. So just to rule the possibility out I made a new test and called it FliteLevel3. This test didn't work either. The projects FliteLevel2, Test4 and FliteLevel3 all had exactly the same code but only Test4 worked. I rebuilt my project under a new name and it is working again. All very strange, and leaves you with a sense of Voodoo to the whole thing that is not cool.

Related

Reference to xml_****_**** is ambiguous

I have updated my Xcode to the latest version of 8.0
After the update, I am facing a new build error preventing me to run the project on the simulator.
The error is the below in DDXMLNode.m:
reference to 'XML_DOCUMENT_NODE' is ambiguous
I am using the XMPP framework as pods (pod 'XMPPFramework') so I still can't figure out a way to solve this.
Note that the project is working normally on the device and was working on both Device and Simulator with the previous Xcode Version.
I have tried to search the internet but I still didn't find any solution for this.
I tried to clean the project and delete everything in the DerivedData folder as well, but it didn't solve the issue.
Appreciate any help.
Actually I am posting this answer in case it may help someone in the future.
After searching a lot without finding any answer, I discovered the following:
There is a file called module.modulemap that contains 2 methods.
module libxml [system] {
header "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/libxml2/libxml/tree.h"
export *
}
module libxmlSimu [system] {
header "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/include/libxml2/libxml/tree.h"
export *
}
The first one is used for real devices, the other one for the simulator.
However, when building the app on the simulator, and for a reason that I didnt figure it out, tree.h is being duplicated and causing all these issue.
So what I made to be able to run the project on the simulator was to comment the first method so the app can build successfully.
NB: Don't forget to uncomment the method once you want to run the project again on the real device.
Hope this will help anyone who will face the same issue.
i have tried some way.
I search the word XML_DOCUMENT_NODE with a result here:
then replace every error with the left symbol. It turns out to be OK for me now.

XCode 7.2.1 - cdtool cannot compile occurs irregularly

The app I am developing has a weird issue since a few months. Sometimes during building an archive the error cdtool cannot compile occurs. But only sometimes.
When I wipe the derived-data and do a clean-archive it works again.
I found a variety of people asking similar questions, but they all had this error occur nonstop.
To be precise: The error occurs always during archiving and always on the same file which is Config.xcdatamodel. This CoreData model only has one version so version-conflicts aren't a problem (also verified on the file-system).
Unfortunately it is nearly not reproducable at all, it seems to occur 100% randomly. It also doesn't provide an closer information about what exactly it is, that fails.
In the image there are two compile-errors. Thats because the Config.xcdatamodel that fails, is in both targets. They won't be used at the same time, so it should be fine. I also suspect that the second error-message is based on the first (upper) one.
Did anyone ever observe such a behaviour? I'm currently using XCode 7.2.1

Swift sometimes calls wrong method

I noticed strange behaviour during working with Swift projects. I can't explain it other than Swift sometimes calls wrong method. It is very rare and even adding blank lines to the code could lead that this error is gone.
Let me explain in screenshots what I mean, next I use CoreData example of SwiftDDP project that can be found on Github, but such issues I was able to see in my own projects.
Here we at Todos.swift:74 where you can see breakpoint, I expect that next call should be getId() method of MeteorClient class because it was already instantiated:
After Step Into as you can see the ping() of the same instance is called:
The next two steps into lead to EXC_BAD_ACCESS exception:
In my project I saw this issue fairly often before I stopped using singletons, so it could be related to Swift static memory usage or I don't understand something that is not surprising as I have little experience with multithreading and memory management.
My environment is:
AppCode OC-145.184.11
Xcode Version 7.2.1 (7C1002)
iOS 9.2 SDK
Apple Swift version 2.1.1 (swiftlang-700.1.101.15 clang-700.1.81)
NOTE: Here I use AppCode but the same behavior I was able see in Xcode, and even more if the same issue that reproduces in Xcode could not reproduce in AppCode and vice versa.
Would be thankful if someone can explain this strange behaviour to me.
Thanks!
This just happened on my team, using Swift 2.2. It's really incredibly strange. It's not a threading issue or an async problem, it was a very cut & dry use case. We called one instance method and another one above it got called. I deleted the method that was getting called, and then the one above THAT got called instead. Then I moved the method I was actually calling to a different location in the file, and it looked like multiple properties were getting called.
This is disturbing and worrisome, as now you feel you can't trust your code to run properly.
But we did "solve" it. We moved the method up to the code that was actually getting triggered, and after a little trial & error the right method got called. Not yet sure if this will manifest itself for other methods.
It'd be nice to be able to provide a simple project where this is happening, but it seems highly unlikely that it's possible, and I can't share a snap shot of my code base with Apple. It must be a perfect storm of something to cause a bug with Swift's run time.
I had a similar issue, I think. Couldn't see that the wrong function was being called, but breakpoints on the function that was being called were never hit, and I couldn't step into the function from where it was being called. I added a new function (I called it wtf) with the same parameter list and implementation, and that one worked as expected, so it must have been a weird linking issue in the Swift compiler.
Update: super-cleaning appeared to work (see below), but it doesn't. Looks like I'm leaving my wtf function in.
After super-cleaning the project, it looks like everything's working as expected again:
clean (cmd + shift + k)
clean build dir (cmd + opt + shift + k)
quit XCode
delete derived data (rm -rf ~/Library/Developer/Xcode/DerivedData/*)
FYI, in my case, the function I call is in a generic base class, called from a generic subclass, triggered by a specialized sub-sub-class. As we all know, the generics are still very buggy in the Swift compiler, so that's probably why I encountered this.
Do you have multiple threads running? Maybe a network thread?
I thought I had this issue too but then it turned out my one thread was doing something and because the other thread crashed it stopped the other thread at a random point. I only noticed this thread so it seemed like it crashed at a random #IBAction function.
When I switched to iPhone 6 simulator instead of iPhone 7, it seems to be working correctly now!
Our app was rejected from review because of a mysterious crash. After debugging I found that it was having this same issue - but only for the Release scheme!
So I went through every setting in Build Settings one by one to see if switching it to that of another scheme would fix the issue: changing ENABLE_TESTABILITY to true fixed it......

Code coverage do not include code covered with UITests

In my simple app I have a few files that are tested by unit testing and uitesting.
I am pretty sure that in UITests I tested EVERY line in WLLoginViewController. The test passed, but it is not considered as 100% in code coverage for that file. Sometimes when I restart Xcode, run app again, clean app, hard clean app. Do some accidental things, it works. But run tests once again, and again it is not considered. Why? Any ideas how to fix it? Is it a bug?
As you already mentioned, sometimes Xcode says that you are testing 100% of your code and sometimes it doesn't. So it's really inconsistent. That is an indicator for a bug.
Since you are still using an Xcode-beta, it's most likely a bug in Xcode. I wouldn't worry to much since it's still a beta-version and would check later, when the final version is released.
Ok, I've found temporary workaround.
Remove derived data for your project (window->projects)
Quit Xcode and Simulator.
Launch Xcode with your project, and run tests.
Run tests again.
Remember to wait until indexing is finished:
Weird, but try and see:)

Wintermute iOS App Gets "EXC_BAD_ACCESS"

I am currently attempting to port a game I've developed in the Wintermute Lite engine to iOS platforms. My game will compile just fine in XCode (albeit using the armv6 architecture) and will run perfectly on the iOS simulator; however, when I try to deploy it to an iPad, the first thread will halt in XCode with the error "EXC_BAD_ACCESS (code=1, adress=0xfffffff6)", pointing to a non-specific line of assembly code.
First of all, if you guys have any ideas right off the bat as to what might be causing this, I would greatly appreciate some help. The thing is, I'm more than willing to debug this myself, but being a complete noob with Objective-C as well as XCode, I'm not sure how to trace this specific error back to the line of code that's causing it (I apologize if this is a really basic question but I've already attempted to find a command to get the line of code associated with the error, but with no success).
I realize that this is scant on details, but as I said, I'm not sure how to pinpoint the piece of code that's causing this error using XCode, otherwise I'd just debug this myself. If there's any extra information I can provide, let me know.
Thanks in advance for any help!
I got it working. After a lot of messing around with XCode, I realized that I incorrectly configured the project file provided by Wintermute. As far as I can tell, it had something to do with the fact that the project was originally set to build for "iOS Universal" and I changed it to "iPad 5.0," which somehow caused the project to break upon deployment.
Anyway, I started over with a new XCode project file and got it to compile perfectly! Sorry for the bother.
The problem is the fact that it isnt ment to run on iOS. The reason it runs on he simulator is that it is building for a Intel chip set, not ARM. Even though you set it to armv6 it doesn't mean that the code will run on a non-intel device.

Resources