Fix two minor compilation issues trying to build in other environments
- `uint64` is a Google-ism
- Mark `Import` as pure-virtual, otherwise the missing implementation can cause a linker error
PiperOrigin-RevId: 446900934
diff --git a/rs_bindings_from_cc/decl_importer.h b/rs_bindings_from_cc/decl_importer.h
index 487f1c7..7b1592b 100644
--- a/rs_bindings_from_cc/decl_importer.h
+++ b/rs_bindings_from_cc/decl_importer.h
@@ -199,7 +199,7 @@
std::optional<IR::Item> ImportDecl(clang::Decl* decl) {
return Import(clang::cast<D>(decl));
}
- virtual std::optional<IR::Item> Import(D*);
+ virtual std::optional<IR::Item> Import(D*) = 0;
};
} // namespace crubit
diff --git a/rs_bindings_from_cc/ir.h b/rs_bindings_from_cc/ir.h
index 57fd479..feb8736 100644
--- a/rs_bindings_from_cc/ir.h
+++ b/rs_bindings_from_cc/ir.h
@@ -424,8 +424,8 @@
llvm::json::Value ToJson() const;
std::string filename;
- uint64 line;
- uint64 column;
+ uint64_t line;
+ uint64_t column;
};
inline std::ostream& operator<<(std::ostream& o, const SourceLoc& r) {