Age | Commit message (Collapse) | Author |
|
Also make impl_partialeq test to also cover impl_debug case.
|
|
|
|
Also clean a bit.
|
|
|
|
|
|
|
|
|
|
Remove derive-partialeq-template-inst test.
Add comments.
Don't implement PartialEq for incomplete arrays
Handle opaque bases and template instantiations
Extract constrain_type.
Extract `is whitelisted?` check
Add failing partialeq-anonfield
join for comps
Fix: return insert if not whitelisted
Delegate TypeRefs and alias to constrain_join.
Delegate Template instantiations to constrain_join
Add derive-partialeq-pointer.hpp test
Update comment.
Fix layout alignment larger that array limit
Add missing test for derive-partialeq-anonfield.rs
Clean
Clean
Fix typo in opaque-template-inst-member test
Remove redudant stmt
Add comment on can_supersede.
Format impl_partialeq and leave a comment
Extract requires_storage into it's own function.
Clean
|
|
Its not just item ids now, and that name was pretty long...
|
|
|
|
|
|
And also allow ID comparison across ID types, as this makes implementing the
above much easier.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The definition of a template is always a type, so it should be a TypeId rather
than an ItemId. Template arguments, on the other hand are not guaranteed to be
types. They can be constant values, for example.
|
|
This commit makes certain `TypeKind`s that can only reference other types use
`TypeId` instead of `ItemId`.
|
|
|
|
None of the callers were passing template parameters.
|
|
|
|
This commit also makes `BindgenContext::resolve_type` take a `TypeId`, and adds
unchecked conversions everywhere that we call it. Next, I'm going to go through
the code base, replacing these unchecked conversions with checked ones, and
tightening up types as I go.
|
|
When choosing a parent ID for a type that we are parsing, prefer known semantic
parents over the provided parent ID. It seems like we shouldn't even be passing
explicit parent IDs around (they're often buggy), and instead should expand the
`known_semantic_parent` infrastructure, but I'll leave that to some future work.
Fixes #1048
|
|
Enable --rustfmt-bindings by default
This patch flips --rustfmt-bindings to --no-rustfmt-bindings and enables
formatting by default. If rustfmt is not accessible, a warning is
printed and the bindings are printed unformatted.
Addresses #977.
|
|
codegen: Avoid generating wrong type for enums with unknown representation
Fixes #1025
|
|
lib: Print warnings to stderr instead of stdout.
Seems like the right thing to do, and allows me to test stuff piping to rustc instead of saving to a file.
|
|
Make objc-related expectations compile
Fixes #1004.
After looking at how `msg_send!` is supposed to be used, I realized that
we were erroneously passing type signatures to it.
The expectations compile now, but some of them are not formatted properly.
My guess is that `rustfmt` does not know how to format the following:
```
msg_send!(obj, arg1:1 arg2:2 arg3:3)
```
Notice the lack of separatros between the `arg`s.
Any advice on how to proceed here is appreciated.
r? @fitzgen
|
|
|
|
|
|
Some little deriving cleanups
See each commit for details.
r? @emilio
|
|
WIP, fixes #1004.
After looking at how `msg_send!` is supposed to be used, I realized that
we were erroneously passing type signatures to it.
The expectations compile now, but some of them are not formatted properly.
My guess is that `rustfmt` does not know how to format the following:
```
msg_send!(obj, arg1:1 arg2:2 arg3:3)
```
Notice the lack of separatros between `arg`s.
|
|
Clean.
Add timer.
Clean codegen
|
|
This patch flips --rustfmt-bindings to --no-rustfmt-bindings and enables
formatting by default. If rustfmt is not accessible, a warning is
printed and the bindings are printed unformatted.
|
|
Impl_debug fixes
r? @fitzgen
|
|
|
|
|
|
|
|
Translate _ as __
This change treats _ as a reserved identifier to resolve the bug reported in #631.
I have one concern - if the header has both an `_` and `__` identifier in the global namespace, this will cause a conflict. However, it seems like we already don't handle that case for `keyword_` (e.g. `abstract_`, `alignof_`, etc.) so it doesn't seem like we need a solution specifically for `__` in this change.
Fixes #631.
|
|
|