Xcode 15 error: Deserialized error type '<null>' in module 'Amber3Utils' [...filename...]

The error message in the subject line greets me for EVERY file in my main build project when I attempt to build or run the main scheme. Looking at the build log, I see the following when the builtin-swiftTaskExecution for every file:

<unknown>:0: error: deserialized error type '<null>' in module 'Amber3Utils'

(The build within Amber3Utils has no errors...)

The workspace has one framework (Amber3Utils) which is a git submodule. The build depends on this framework, which builds automatically (after a "Clean build folder", for instance). I'm using the same source code (from the git branch "develop") for a different project and it builds perfectly without issue.

I've tried running the same project against Xcode 15.0.1, Xcode 15.1, and the current Xcode 15.2 with the same results. Each different attempt is preceded by clearing out DerivedData.

I've used "xcodebuild" instead of Xcode IDE, which does not generate these errors.

When I click on an error in the Issue navigator, there is no indication of which line the error is on in the editor, and the message disappears from the navigator. If I then select a different file with the same message in the navigator, the previously removed error message reappears and the message for the new file disappears from the navigator.

This is extremely frustrating.

I used DuckDuckGo to search for the string "Deserialized error type '<null>'" and within Google, it got no results for the string, and instead returns results for each of the words, and none of the citations it finds has this particular error.

This appears to be an issue with the import Amber3Utils statement because if I remove it and remove references to the framework from a source file, the issue will no longer appear for that file in the Issue Navigator.

Does anybody have a clue what's going on?

I have finally figured this out!

It appears that submodule synchronization isn't always logical with git, and the two projects were not using the same build of Amber3Utils...

The most recent git commit used by the project that was getting the error had a change to the project file that may have had a hiccup during a (rather large) merge. The only changes to the project files were additions/removals of files. There were also other file modifications. There was nothing in the build settings that was modified from what I can see.

I reverted my most recent commit and reattempted to build. This time, I still had errors (the reverted changes undid some methods that my main project required), but none of the Deserialized errors. I then reassembled the reverted change by hand, forcing a rebuild of Amber3Utils and the entire project each time before staging a change. This took a bit of time, but it was doable. When all the changes were rebuilt, I had a git repository with the Amber3Utils subproject that no longer generated the error. Once I was satisfied that the new commit was safe and complete, I pushed it up to the origin and then reconfirmed that the project was able to build successfully.

For my other project, I ensured that all submodules were pulled from the most recent develop branches, and rebuilt. I then had both repositories able to compile without the Deserialized error.

Of course, this does not indicate why I was getting the errors during the import of the framework. It would be nice if somebody from the compiler team could explain what the error means, and what to look for when trying to diagnose the root cause. However, it should be useful to keep this message in the forum so that web search engines may give a clue to somebody else who encounters this problem.

Xcode 15 error: Deserialized error type '&lt;null&gt;' in module 'Amber3Utils' [...filename...]
 
 
Q