third_party_rust_cxx/tests/ui
Adrian Taylor c871343ac2 Allow namespace override.
This change allows a

 #[namespace (namespace = A::B)]

attribute for each item in a cxx::bridge.

We now have a fair number of different types of name floating
around:
* C++ identifiers
* C++ fully-qualified names
* Rust identifiers
* Rust fully-qualified names (future, when we support sub-modules)
* Items with both a Rust and C++ name (a 'Pair')
* Types with only a known Rust name, which can be resolved to a
  C++ name.

This change attempts to put some sensible names for all these
things in syntax/mod.rs, and so that would be a good place to start
review.

At the moment, the Namespace (included in each CppName)
is ruthlessly cloned all over the place. As a given namespace is
likely to be applicable to many types and functions, it may
save significant memory in future to use Rc<> here. But let's not
optimise too early.
2020-10-26 15:23:34 -07:00
..
bad_explicit_impl.rs Add ui test of explicit impl with unsupported Self 2020-10-04 00:20:22 -07:00
bad_explicit_impl.stderr Add ui test of explicit impl with unsupported Self 2020-10-04 00:20:22 -07:00
by_value_not_supported.rs Add tests for by-value-not-supported errors 2020-05-01 10:00:17 -07:00
by_value_not_supported.stderr Allow namespace override. 2020-10-26 15:23:34 -07:00
data_enums.rs Support C-style enums 2020-04-30 14:12:37 -07:00
data_enums.stderr Touch up PR 170 2020-04-30 22:50:10 -07:00
disallow_lifetime.rs Add ui test for disallowed lifetimes 2020-04-22 16:39:44 -07:00
disallow_lifetime.stderr Add ui test for disallowed lifetimes 2020-04-22 16:39:44 -07:00
duplicate_enum_discriminants.rs Support C-style enums 2020-04-30 14:12:37 -07:00
duplicate_enum_discriminants.stderr Compute enum discriminant during parsing 2020-05-05 08:32:32 -07:00
empty_enum.rs Format ui test files using rustfmt 2020-08-29 11:36:22 -07:00
empty_enum.stderr Format ui test files using rustfmt 2020-08-29 11:36:22 -07:00
empty_struct.rs Disallow shared structs having 0 fields 2020-03-20 14:58:56 -07:00
empty_struct.stderr Disallow shared structs having 0 fields 2020-03-20 14:58:56 -07:00
enum_inconsistent.rs Test inconsistent suffix on enum discriminants 2020-05-10 23:29:12 -07:00
enum_inconsistent.stderr Test inconsistent suffix on enum discriminants 2020-05-10 23:29:12 -07:00
enum_match_without_wildcard.rs Support C-style enums 2020-04-30 14:12:37 -07:00
enum_match_without_wildcard.stderr Update ui tests to nightly-2020-06-27 2020-07-21 17:58:14 -07:00
enum_out_of_bounds.rs Detect earlier untyped discriminants out of bounds of later suffix 2020-05-11 00:30:24 -07:00
enum_out_of_bounds.stderr Detect earlier untyped discriminants out of bounds of later suffix 2020-05-11 00:30:24 -07:00
enum_overflows.rs Expand maximum recognized discriminant to 64 bits 2020-05-10 23:23:37 -07:00
enum_overflows.stderr Expand maximum recognized discriminant to 64 bits 2020-05-10 23:23:37 -07:00
enum_unsatisfiable.rs Test unsatisfiable discriminant range 2020-05-10 23:32:31 -07:00
enum_unsatisfiable.stderr Test unsatisfiable discriminant range 2020-05-10 23:32:31 -07:00
generic_enum.rs Support C-style enums 2020-04-30 14:12:37 -07:00
generic_enum.stderr Support C-style enums 2020-04-30 14:12:37 -07:00
impl_trait_for_type.rs Add ui test of explicit impl trait for type 2020-10-04 00:20:22 -07:00
impl_trait_for_type.stderr Add ui test of explicit impl trait for type 2020-10-04 00:20:22 -07:00
include.rs Test include parsing 2020-05-11 20:07:34 -07:00
include.stderr Test include parsing 2020-05-11 20:07:34 -07:00
multiple_parse_error.rs Format ui test files using rustfmt 2020-08-29 11:36:22 -07:00
multiple_parse_error.stderr Format ui test files using rustfmt 2020-08-29 11:36:22 -07:00
non_integer_discriminant_enum.rs Support C-style enums 2020-04-30 14:12:37 -07:00
non_integer_discriminant_enum.stderr Touch up PR 170 2020-04-30 22:50:10 -07:00
nonempty_impl_block.rs Add ui test of invalid nonempty impl block 2020-10-04 00:20:22 -07:00
nonempty_impl_block.stderr Add ui test of invalid nonempty impl block 2020-10-04 00:20:22 -07:00
opaque_not_sized.rs Safe FFI between Rust and C++ 2020-01-08 08:57:24 -08:00
opaque_not_sized.stderr Update ui tests to nightly-2020-09-05 2020-09-04 23:28:56 -07:00
reference_to_reference.rs Disallow passing a reference to a reference. 2020-04-28 10:14:41 -07:00
reference_to_reference.stderr Generalize reference-to-reference check to cover all positions 2020-04-28 13:38:28 -07:00
reserved_name.rs Add ui test for reserved type names 2020-04-22 17:56:27 -07:00
reserved_name.stderr Add ui test for reserved type names 2020-04-22 17:56:27 -07:00
type_alias_rust.rs Type alias parsing 2020-05-07 19:46:02 -07:00
type_alias_rust.stderr Type alias parsing 2020-05-07 19:46:02 -07:00
unique_ptr_to_opaque.rs Remove duplicated UniquePtr<C> impl in ui test 2020-10-16 13:22:47 -07:00
unique_ptr_to_opaque.stderr Remove duplicated UniquePtr<C> impl in ui test 2020-10-16 13:22:47 -07:00
unique_ptr_twice.rs Add test of UniquePtrTarget impl conflict 2020-10-04 00:20:21 -07:00
unique_ptr_twice.stderr Improve error message on a conflicting explicit impl 2020-10-04 00:36:56 -07:00
unnamed_receiver.rs Add ui test for unnamed receiver type error message 2020-04-22 18:25:43 -07:00
unnamed_receiver.stderr Add ui test for unnamed receiver type error message 2020-04-22 18:25:43 -07:00
unrecognized_receiver.rs Add ui test for unrecognized receiver type 2020-04-22 16:54:34 -07:00
unrecognized_receiver.stderr Add ui test for unrecognized receiver type 2020-04-22 16:54:34 -07:00
wrong_type_id.rs Add ui test of type_id mismatch 2020-05-07 19:46:02 -07:00
wrong_type_id.stderr Update ui tests to nightly-2020-09-05 2020-09-04 23:28:56 -07:00