mirror of
https://github.com/topjohnwu/cxx.git
synced 2024-11-27 13:50:24 +00:00
Remove opaque C++ type lifetimes gates
This commit is contained in:
parent
30d46731ef
commit
06c60a32a7
@ -71,11 +71,6 @@ fn check_type_ident(cx: &mut Check, name: &NamedType) {
|
||||
{
|
||||
let msg = format!("unsupported type: {}", ident);
|
||||
cx.error(ident, &msg);
|
||||
return;
|
||||
}
|
||||
|
||||
if !name.generics.lifetimes.is_empty() {
|
||||
cx.error(name, "type with lifetime parameter is not supported yet");
|
||||
}
|
||||
}
|
||||
|
||||
@ -341,7 +336,10 @@ fn check_api_type(cx: &mut Check, ety: &ExternType) {
|
||||
}
|
||||
|
||||
if let Some(lifetime) = ety.generics.lifetimes.first() {
|
||||
cx.error(lifetime, "extern type with lifetimes is not supported yet");
|
||||
if ety.lang == Lang::Rust {
|
||||
let msg = "extern Rust type with lifetimes is not supported yet";
|
||||
cx.error(lifetime, msg);
|
||||
}
|
||||
}
|
||||
|
||||
if !ety.bounds.is_empty() {
|
||||
@ -447,10 +445,6 @@ fn check_api_type_alias(cx: &mut Check, alias: &TypeAlias) {
|
||||
let msg = format!("derive({}) on extern type alias is not supported", derive);
|
||||
cx.error(derive, msg);
|
||||
}
|
||||
|
||||
if let Some(lifetime) = alias.generics.lifetimes.first() {
|
||||
cx.error(lifetime, "extern type with lifetimes is not supported yet");
|
||||
}
|
||||
}
|
||||
|
||||
fn check_api_impl(cx: &mut Check, imp: &Impl) {
|
||||
|
@ -1,8 +0,0 @@
|
||||
#[cxx::bridge]
|
||||
mod ffi {
|
||||
extern "C++" {
|
||||
type Complex<'a, 'b>;
|
||||
}
|
||||
}
|
||||
|
||||
fn main() {}
|
@ -1,5 +0,0 @@
|
||||
error: extern type with lifetimes is not supported yet
|
||||
--> $DIR/extern_type_lifetime.rs:4:22
|
||||
|
|
||||
4 | type Complex<'a, 'b>;
|
||||
| ^^
|
Loading…
Reference in New Issue
Block a user