You can use as many open source code as you want, but the open source code (like your own code) isn't allowed to use private Apple APIs. And I think that's what happened. If you want to distribute through the Appstore you must get rid of the parts that uses private APIs.
Yeah one of the LLVM headers (api-breaking.h) had an extern int that was apparently coming from the linkage to the runtime. We replaced that with a local variable and the review process is fine now. Thanks!