/// TRUE - An error occurred.
/// FALSE - No errors.
bool
-Linker::LinkInArchive(const sys::Path &Filename) {
+Linker::LinkInArchive(const sys::Path &Filename, bool &is_native) {
// Make sure this is an archive file we're dealing with
if (!Filename.isArchive())
if (!arch)
return error("Cannot read archive '" + Filename.toString() +
"': " + ErrMsg);
+ if (!arch->isBytecodeArchive()) {
+ is_native = true;
+ return false;
+ }
+ is_native = false;
// Save a set of symbols that are not defined by the archive. Since we're
// entering a loop, there's no point searching for these multiple times. This