I'm curious about this as well. The only issue that I could have is this, "Apps for iPhone or iPad must be built with the iOS 13 SDK..."I have no idea what the SDK was at the time I submitted the app and I don't see any way to tell after the fact. If they have a way of determining that bit of information then it seems like we should, too. Any ideas? Or as the OP asks, does it matter?
Post
Replies
Boosts
Views
Activity
Again, to be clear, my app works with iOS 13. I just don't know if I built it with SDK 13. Those are two different things. I want to know if there is even a means of determining which SDK you used. If you can't check then it seems like a bunch of developers would have to resubmit their apps for no reason. And what would be the point anyway? Either your app works with iOS 13 or it doesn't. That doesn't depend on which SDK you use, right? It's not like storyboard launch screens began with SDK 13.Why can't they just be more clear? Don't they realize we're all pedantic software engineers?
Just got back to a project I started last year. Yikes! The missing graphical view is a huge loss!
I've had similar problems, which is why I found this thread. Unfortunately, I can see it's really just you streaming your journey through this problem without much help from the community. I suggest you supply some more information about your project.
It appears you are trying to compile a C file and are specifically talking about C headers. Have you tried looking at the preprocessor output? I once had the exact same problem and I discovered that my function name corresponded to a macro definition in some standard header. My function name was StrLength, so my function name was replaced by "int" in the preprocessor output. I added #undef StrLength and everything compiled fine.
In your case, your example is void func(...). Is that literally your code or is the function name something else? I suggest you include actual code if you the best help.
Is you project entirely comprised of only C files? Are you using Objective C? Are you bridging Objective C and Swift?
In my project, I have low level code in C. Then a layer of Objective C on top of that. Then Swift code for my model on top of that. Finally, there's SwiftUI code that uses the Swift model. In order to mix the Objective C and Swift, I needed a bridging header. I was getting hundreds of phantom errors at one point, even though my builds were successful. Turns out that it was related to the SwiftUI previews, which also are compiling the same code in its own builds.
I solved this problem by including more header files in the bridging file. I had included only the Objective C headers because the C headers were all included indirectly. I explicitly added all of the C headers and my phantom errors went away.
Believe me, I know how frustrating this can be! But you might get more help by providing more information about your project and supplying more actual source code.
I'm assuming that when you say "...it doesn't include the .h files in the target...", you mean click on the file in the project navigator and then click on the Target Membership checkbox in the info pane. If that is what you mean, I can tell that you do not do that with header files. I'm using Xcode 14.3 and it won't even let me. You also don't do that with the Info file, although for some reason Xcode lets me, but that causes build problems.
It seems like you've somehow screwed up the paths to your files. Personally, I keep my implementation and header files together in the same folder. (I know some old school programmers like to keep them separated by file type.) I also group my files in the navigator to match the subfolders containing the files. That's how I maintain my sanity. So in my project that is only Objective C and C (no Swift), it looks like this:
And clicking on that small right pointing arrow icon after the filename takes me to the file in the Finder. I think that's key. If you click on that arrow and it doesn't take you to the actual file then something is screwed with your paths.
That aside, you've obviously been writing C for awhile now and you must know that an error on a line does not mean that there is an error on that line. It's probably an error that came before that line in the compile. If you get the header file locations sorted out and still have this compile error then I would look at the preprocessor output. That is what is actually being compiled, not the source code you're looking at.
Also, compile just the C implementation file and follow the includes from the implementation file in the order they are included. There's probably a problem earlier in the compile of the implementation file.
The button style did not help. The text and system image were both rendered in blue. They both turned black when I added the .plain style, so it was having an effect. I also tried setting the style to .automatic, which turned it back to blue, but that is the default, so no surprise there. That should be no different than having no button style.
When I navigate to a detail screen the Back button is rendered in blue and it has the hover effect, so I just don't see what is different about my toolbar buttons and the system generated back button.
Also, my regular buttons in the content view are defined like this:
Button("Remote Control", action: showManualControl)
Isn't that as standard as you can get?
OK, I figured it out. In Build Settings: Deployment, the visionOS Deployment Target got set to 1.2 by the Xcode upgrade. I'm running the latest release, 1.1.2. I changed it to 1.1 and everything is fine.
Just to be clear about what is supposed to happen, the macros are supposed to be iteratively expanded. In the working project, this can be emitted for illustration.
enum { testServiceCount = 0 +1 +1 +1 , testCharacteristicCount = 0 +1 +1 +1 +1 +1 +1 +1 +1 };
Perfectly acceptable in a comparison for conditional compilation.
This works in header inclusion when the compilation is an Objective C implementation.
Totally working in one project, but not the other.
Honestly, no. I have no idea what the problem is. I have a newer project with much of the identical code and that works fine. It's this somewhat larger but more important project that is older and suddenly stopped working. I have no promise of reproducing the problem in some random example.
I was hoping for some reply with knowledge of Objective C compiler settings, but didn't happen. I will open a ticket with Apple. That will allow me to privately share the actual project.
Cheers.
I did just try to create a new project and added all the same files and got the same error. Have not yet gotten a response to my issue beyond the auto-response.
I have sent all of the material that I could to developer support and gotten no meaningful response from them, only to acknowledge they have received my emails.
Today I have gotten released updates on my Mac and now my issue disappeared as suddenly as it appeared.
Okay. Don't know what happened but back to normal. I don't really feel like close this issue.