Really check everything in check_all
diff --git a/syntax/check.rs b/syntax/check.rs
index 33ca5bb..a99e982 100644
--- a/syntax/check.rs
+++ b/syntax/check.rs
@@ -30,10 +30,7 @@
}
fn do_typecheck(cx: &mut Check) {
- for segment in cx.namespace {
- ident::check(cx, segment);
- }
- ident::check_all(cx, cx.apis);
+ ident::check_all(cx, cx.namespace, cx.apis);
for ty in cx.types {
match ty {
diff --git a/syntax/ident.rs b/syntax/ident.rs
index 0694e32..cec424c 100644
--- a/syntax/ident.rs
+++ b/syntax/ident.rs
@@ -1,8 +1,9 @@
use crate::syntax::check::Check;
+use crate::syntax::namespace::Namespace;
use crate::syntax::{error, Api};
use proc_macro2::Ident;
-pub(crate) fn check(cx: &mut Check, ident: &Ident) {
+fn check(cx: &mut Check, ident: &Ident) {
let s = ident.to_string();
if s.starts_with("cxxbridge") {
cx.error(ident, error::CXXBRIDGE_RESERVED.msg);
@@ -12,7 +13,11 @@
}
}
-pub(crate) fn check_all(cx: &mut Check, apis: &[Api]) {
+pub(crate) fn check_all(cx: &mut Check, namespace: &Namespace, apis: &[Api]) {
+ for segment in namespace {
+ check(cx, segment);
+ }
+
for api in apis {
match api {
Api::Include(_) => {}