library.importUri.path == 'meta/meta.dart');Daco HarkesShould not be a special case - just add entry point pragmas for the RecordUse class in that library.
Unfortunately, that doesn't work. There are already package published out there without a pragma.
(Honestly, I don't think this annotation should be in a package, it should be in the SDK. But that's a different discussion to have.)
// `NativeCodeOracle.isMemberReferencedFromNativeCode`. This failed for theDaco HarkesNote that NativeCodeOracle collects all external uses by visiting AST and then provides a quick way to check if something is used externally. So instead of changing isMemberReferencedFromNativeCode consider modifying visit methods in `PragmaEntryPointsVisitor` to add corresponding classes and members to one of the sets in NativeCodeOracle.
Done
// `[@vm.unboxing-info.metadata=(i)->i]` to `[@vm.unboxing-info.metadata=[!regcc]]`.Daco HarkesThis is not really a problem - it falls into the category of less optimizing classes and members which are recorded. There are going to be just a few of those, and not unboxing their parameters would not make any difference (they might not even have unboxable parameters).
As we discussed, ideally we should allow all optimizations (so record use does not affect the result in any way), we could just leave breadcrumbs about optimized out things (such as values of removed parameters) in order to list usages. But as long as we're not doing this, it's okay to have recorded members less optimized.
Done
// or not used by the VM in a way that requires the import.Daco HarkesNot sure I understand this comment. It's fine to mark RecordUse annotation as entry point and keep it if our implementation relies on it. It's fine to import it if it was previously imported.
The existing code does it another way by special casing it here, which is not needed.
Done
// it stays as `class SomeClass`.Daco HarkesDitto about less optimizing things which are being recorded.
Done
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |