Commit Graph

115 Commits

Author SHA1 Message Date
Ralf Jung 78dbf5752f avoid putting user code inside unsafe blocks 2021-03-26 00:01:10 +01:00
Boqun Feng 8c9b3eddcf Use stablilized addr_of! macro (#50)
Since Rust 1.51.0, support for macro addr_of! has been stabilized[1],
and this provides a way to get a raw pointer without potential UB in
some cases.

Memoffset alreadly uses the feature at the pre-stablilized stage (the
macro was named as raw_const! then). Therefore, switch to use the
stablilized version (and name) if Rust 1.51.0 and above is used,
otherwise use the original fallback version, which works in a less
technically correct way.

[1]: https://github.com/rust-lang/rust/pull/72279

Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
2021-03-08 19:56:59 +01:00
Gilad Naaman 664896e766 v0.6.1 (doc fixes) 2020-10-23 16:16:30 +03:00
Gilad Naaman 1c24ad1441 v0.6.0 2020-10-23 16:16:24 +03:00
Andrew Gaspar 7dc779f328 Support tuples in offset_of (#48)
Support tuple types via new offset_of_tuple / raw_field_tuple macros
2020-10-23 09:16:25 +02:00
Gilad Naaman 4832512e36 v0.5.6 2020-09-20 14:54:44 +03:00
Ralf Jung b30f767bea remove unnecessary 'cargo miri setup' 2020-08-25 11:58:09 +02:00
Gilad Naaman 0d1ff7814a Merge pull request #46 from RalfJung/no-transmute
use MaybeUninit::as_ptr instead of transmute
2020-08-11 13:39:09 +03:00
Ralf Jung 72768daee9 use MaybeUninit::as_ptr instead of transmute 2020-08-09 18:44:38 +02:00
Roland 608e11823e Remove const_transmute feature dependency (#45)
Remove `const_transmute` feature flag

`const_transmute` has been stabilized on current nightly, see https://github.com/rust-lang/rust/pull/72920.
Document `const_fn_transmute` requirement when using `offset_of!` inside a `const fn`.
Add test for `offset_of!` inside a `const fn`.
2020-07-31 00:21:18 +02:00
Gilad Naaman e8ee92203a v0.5.5 2020-07-01 21:55:07 +03:00
Gilad Naaman bc677e458e Merge pull request #44 from RalfJung/refactor
some reorganization
2020-06-23 11:08:07 +03:00
Ralf Jung 6d5feabd4d Travis shares caches between jobs unless their env vars differ 2020-06-23 08:51:10 +02:00
Ralf Jung b1cb4ee2b8 fix allow_clippy 2020-06-22 10:43:53 +02:00
Ralf Jung fcbad2f16e share more code in raw_field 2020-06-22 10:07:50 +02:00
Ralf Jung 525c81e24f factor difference between const and non-const into sub-macro 2020-06-22 10:06:53 +02:00
Ralf Jung 9db8a15115 make the const variant closer to the normal variant (just the offset part is different) 2020-06-21 12:12:34 +02:00
Ralf Jung 78014026d9 span_of: use raw_field macro for more safety 2020-06-21 12:00:25 +02:00
Ralf Jung f4c1d18544 move raw_field macro to its own file 2020-06-21 11:53:48 +02:00
Gilad Naaman 40015d02f4 Merge pull request #43 from RalfJung/raw_ref
add support for using raw_ref macros
2020-06-20 16:37:24 +03:00
Ralf Jung 2745b6ceaa travis config: avoid setting meaningful env vars 2020-06-20 15:09:16 +02:00
Ralf Jung 720e392281 fmt 2020-06-20 15:02:40 +02:00
Ralf Jung 3f21c8bba3 add support for using raw_ref macros 2020-06-20 14:23:50 +02:00
Gilad Naaman 100d48971d Merge pull request #42 from RalfJung/version
release v0.5.4
2020-03-16 21:46:06 +02:00
Ralf Jung f7ab3aed26 bump version for release 2020-03-16 20:26:44 +01:00
Gilad Naaman 26777d03a4 Merge pull request #41 from Gilnaa/move_to_autocfg
Switch to autocfg from rustc_version
2020-03-16 19:31:08 +02:00
Gilad Naaman 2d89f26516 Fixed build for 1.19 2020-03-16 19:23:25 +02:00
Gilad Naaman c150ad4941 Switch to autocfg from rustc_version 2020-03-16 19:07:13 +02:00
Gilad Naaman c57ade7f1f Merge pull request #40 from RalfJung/raw_field
add raw_field macro to compute raw ptr to field
2020-03-16 19:00:52 +02:00
Ralf Jung 1280f5b8ac rustfmt 2020-03-16 17:33:13 +01:00
Ralf Jung 3d2481a427 avoid accessing libcore for compat with old Rust versions 2020-03-16 17:33:08 +01:00
Ralf Jung f1642af871 add raw_field macro to compute raw ptr to field 2020-03-16 17:02:11 +01:00
Ralf Jung 54c68f8843 Merge pull request #39 from AnthonyMikh/fix_typo
Fix a typo in comment
2020-03-10 08:27:34 +01:00
AnthonyMikh 981db233dc Fix a typo in comment 2020-03-10 02:07:14 +03:00
Ralf Jung 13ea44fbad Merge pull request #36 from RalfJung/miri
better way to ignore tests in Miri
2019-12-11 16:44:56 +01:00
Ralf Jung 0ad6b6bb87 Merge pull request #35 from RalfJung/allow-clippy
allow clippy lint
2019-12-07 13:21:12 +01:00
Ralf Jung aa4738c356 better way to ignore tests in Miri 2019-12-07 12:17:22 +01:00
Ralf Jung 9f13984808 allow clippy lint only on recent enough compilers 2019-11-17 20:47:03 +01:00
Ralf Jung f8fbd6d073 remove redundant namespacing from some features 2019-11-17 20:45:27 +01:00
Ralf Jung 8b95fb5233 Merge pull request #31 from Gilnaa/feature/constant-offset
Added impl for constant offset_of
2019-11-16 21:45:06 +01:00
Gilad Naaman 176b647ccd Added impl for constant offset_of 2019-11-16 22:34:38 +02:00
Ralf Jung 3708978129 allow clippy lint 2019-11-16 21:30:32 +01:00
Gilad Naaman 876e076491 Merge pull request #33 from RalfJung/msrv
see if we actually work on even older Rust versions
2019-11-16 12:26:30 +02:00
Ralf Jung c1d80999cf we actually work on 1.19 as well 2019-11-16 11:03:15 +01:00
Gilad Naaman dd73e59e83 v0.5.3 2019-11-07 18:57:53 +02:00
Gilad Naaman 457f1f622a Merge pull request #32 from Gilnaa/bugfix/old-nightly
Fixed build for old nightlies where doctests were not present.
2019-11-07 18:56:57 +02:00
Gilad Naaman b17540333a Fixed build for old nightlies where doctests were not present. 2019-11-07 18:43:17 +02:00
Gilad Naaman ea332cd53e v0.5.2 2019-10-31 07:05:31 +02:00
Gilad Naaman a2f09d9436 Merge pull request #28 from RalfJung/comment
remove confusing comment
2019-08-29 07:02:08 +03:00
Ralf Jung 4b32562a82 Merge pull request #27 from Amanieu/path
Change the struct parameter from a tt to a path.
2019-08-28 20:13:23 +02:00