summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-10-24Auto merge of #1092 - seemyvest:fix-1029, r=fitzgenbors-servo
Issue #1029: Print error messages if header is a folder or unreadable r? @fitzgen
2017-10-24Derive `Clone` along with `Copy` on latest stable.Sergey Pepyakin
2017-10-24Auto merge of #1091 - jrmuizel:linkage, r=emiliobors-servo
Store function linkage in the ir This lets us capture 'static inline' functions in the ir and filter them later down the pipeline. This is the first step on the way to handling these functions better.
2017-10-24ir: Cleanup a bunch of constructorsEmilio Cobos Álvarez
To use the shorthand initialization syntax.
2017-10-24Store function linkage in the irJeff Muizelaar
This lets us capture 'static inline' functions in the ir and filter them later down the pipeline. This is the first step on the way to handling these functions better.
2017-10-23Fix mistakenly derive hash for struct that contains IncompleteArrayFieldZhiting Zhu
2017-10-24Issue #1029: Print error messages if header is a folder or unreadableseemyvest
2017-10-23Remove `CompInfo::needs_explicit_vtable` and use `HasVtable::has_vtable_ptr` ↵Nick Fitzgerald
instead
2017-10-23Add `HasVtable::has_vtable_ptr` for querying if a type has its own vtable ↵Nick Fitzgerald
pointer
2017-10-23Add `trace!` logging for the `HasVtableAnalysis`Nick Fitzgerald
2017-10-23Record whether the vtable pointer is in self or a base member in ↵Nick Fitzgerald
`HasVtableAnalysis`
2017-10-13Handle unsigned integer constants greater than u32::MAX in codegenNick Fitzgerald
We were not checking signed-ness and emitting the appropriate types. Fixes #1040
2017-10-12Auto merge of #1079 - fitzgen:move-self-into-gen, r=pepyakinbors-servo
Move `self` into `ir::BindgenContext::gen` Small clean up. See each commit for details. r? @pepyakin
2017-10-12Make `ir::BindgenContext::gen` take ownership of `self`Nick Fitzgerald
`bindgen` follows a pipeline architecture, and we only ever generate bindings once. By taking ownership of `self`, we can enforce this. We can also remove checks inside `gen` for whether we have resolved type refs or not, since we now know that we haven't because it is guaranteed to only be called the one time.
2017-10-12Do not make `parse_one` publicNick Fitzgerald
`parse_one` was never supposed to be public and it uses a bunch of non-public types as a parameters, so downstream crates wouldn't be able to call it anyways.
2017-10-12Rename `bitfield` to `bitfield_width`Nick Fitzgerald
Its more clear what the methods/fields are returning/storing when we add "width" to the name.
2017-10-11Handle explicit align=1.Sergey Pepyakin
2017-10-11Refactor requires_explicit_alignSergey Pepyakin
2017-10-10Auto merge of #1071 - pepyakin:emit-hex-bitfield-masks, r=fitzgenbors-servo
Emit hex bitfield masks r? @fitzgen
2017-10-10Emit hex bitfield masksSergey Pepyakin
2017-10-10Auto merge of #1065 - liranringel:thiscall, r=fitzgenbors-servo
Add support for the thiscall ABI Fixes https://github.com/rust-lang-nursery/rust-bindgen/issues/541 The thiscall ABI is experimental, so in order to use it nightly is required and also the following statement: `#![feature(abi_thiscall)]` That's a problem because the `tests_expectations` crate (in the tests folder) tries to compile it (and stable is required).
2017-10-09Auto merge of #1066 - pepyakin:bitfields-in-unions, r=fitzgenbors-servo
Bitfields in unions Fixes #744 I think it is WIP for the moment as I didn't run tests locally.
2017-10-10Add support for the thiscall ABILiran Ringel
2017-10-09Fix bitfields in bindgen unionsSergey Pepyakin
2017-10-09Fix bitfields in untagged Rust unionsSergey Pepyakin
2017-10-07Tell LLVM to not mangle names if they're already mangled through link_name ↵Liran Ringel
attribute
2017-10-05Review fixesSergey Pepyakin
2017-10-05rustfmtSergey Pepyakin
2017-10-05Introduce `with_loaned_item`.Sergey Pepyakin
2017-10-05Use bitfield getter_name in impl_debug.Sergey Pepyakin
Also make impl_partialeq test to also cover impl_debug case.
2017-10-05Use bitfield getter_name in impl_partialeqSergey Pepyakin
2017-10-05Eagerly generate bitfield accessor namesSergey Pepyakin
Also clean a bit.
2017-10-04Make bitfields larger than type opaque.Oliver Geller
2017-10-04Remove early anonymous bitfield filtering and consolidate name methodOliver Geller
2017-10-03Assert we only gen partialeq for non rust unionsSergey Pepyakin
2017-10-03Use `if let` instead of plain if.Sergey Pepyakin
2017-10-03Derive partialeq "manually" when possibleSergey Pepyakin
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
2017-10-02s/lookup_item_id/lookup/ in method namesNick Fitzgerald
Its not just item ids now, and that name was pretty long...
2017-10-02Make `has_destructor` checks operate on TypeIdNick Fitzgerald
2017-10-02Tighten up `is_unsized` and `has_vtable` checks to operated on TypeIdNick Fitzgerald
2017-10-02Make methods/constructors/destructors use FunctionIdNick Fitzgerald
And also allow ID comparison across ID types, as this makes implementing the above much easier.
2017-10-02Introduce the `FunctionId` newtype for ids pointing to functionsNick Fitzgerald
2017-10-02Make `CompInfo::inner_vars` use `VarId` instead of `ItemId`Nick Fitzgerald
2017-10-02Introduce VarId for ids pointing to VarNick Fitzgerald
2017-10-02Put newtype-of-ItemId boilerplate behind a macroNick Fitzgerald
2017-10-02Introduce ModuleId to strongly type IDs pointing at ModulesNick Fitzgerald
2017-10-02Replace `as_type_id_unchecked` calls with checked calls where possibleNick Fitzgerald
2017-10-02Replacement should use TypeId rather than ItemIdNick Fitzgerald
2017-10-02Turn `CompInfo::inner_types` into TypeIdNick Fitzgerald
2017-10-02A bunch of parsing things should return TypeIdNick Fitzgerald