-
-
Notifications
You must be signed in to change notification settings - Fork 17
Description
NOTE: pin-project (not lite) is not affected by this issue. see taiki-e/pin-project#34 (comment) for more.
EDIT: see taiki-e/pin-project#342 for pin-project (not lite)
Currently, pin-project-lite uses safe_packed_borrow
lint to check that the struct is not repr(packed)
. Unfortunately, safe_packed_borrow
is lint and you can use the rustc's --cap-lints
flag to lower the lint cap level: https://godbolt.org/z/jEf1fG
The current pin-project-lite generates almost the same code as pin-project, but does not have the equivalent of the repr(packed)
checking that proc-macro(pin-project) does during expansion. (Since the proc-macro-attribute used on the struct expand later than declarative macro used for the struct, a complete fix for the problem is probably impossible until safe_packed_borrow
gets a hard error.)