-
Notifications
You must be signed in to change notification settings - Fork 689
Fix unqualified uses of executorch functions #5709
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/5709
Note: Links to docs will display an error until the docs builds have been completed. ❗ 1 Active SEVsThere are 1 currently active SEVs. If your PR is affected, please view them below: ✅ No FailuresAs of commit ca66a33 with merge base 905b88c ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This pull request was exported from Phabricator. Differential Revision: D63476419 |
This pull request was exported from Phabricator. Differential Revision: D63476419 |
5ee8ce4
to
97e1fa5
Compare
Summary: Pull Request resolved: pytorch#5709 I'm not sure how this worked before, but these sites called functions under torch::executor without actually qualifying them. Qualify them explicitly, because the "can call without qualification" magic stops working when we move the etensor types in D63294217. In a few places I used `namespace etrt = executorch::runtime;` instead of a using statement for a particular function, like `etrt::isIntegralType`. If I just say `using executorch::runtime::isIntegralType`, those files fail in aten mode because the unqualified call to `isIntegralType()` is deemed ambiguous in the presence of `c10::isIntegralType()` -- but afaict that `c10` version isn't `using`'d into the global namespace, so I don't know why it conflicts. It'd be good to figure that out at some point, but this works for now. I also updated custom_kernel_example to stop using the `torch::` namespace. Differential Revision: D63476419 Reviewed By: swolchok
Summary: Pull Request resolved: pytorch#5709 I'm not sure how this worked before, but these sites called functions under torch::executor without actually qualifying them. Qualify them explicitly, because the "can call without qualification" magic stops working when we move the etensor types in D63294217. In a few places I used `namespace etrt = executorch::runtime;` instead of a using statement for a particular function, like `etrt::isIntegralType`. If I just say `using executorch::runtime::isIntegralType`, those files fail in aten mode because the unqualified call to `isIntegralType()` is deemed ambiguous in the presence of `c10::isIntegralType()` -- but afaict that `c10` version isn't `using`'d into the global namespace, so I don't know why it conflicts. It'd be good to figure that out at some point, but this works for now. I also updated custom_kernel_example to stop using the `torch::` namespace. Reviewed By: swolchok Differential Revision: D63476419
Summary: Pull Request resolved: pytorch#5709 I'm not sure how this worked before, but these sites called functions under torch::executor without actually qualifying them. Qualify them explicitly, because the "can call without qualification" magic stops working when we move the etensor types in D63294217. In a few places I used `namespace etrt = executorch::runtime;` instead of a using statement for a particular function, like `etrt::isIntegralType`. If I just say `using executorch::runtime::isIntegralType`, those files fail in aten mode because the unqualified call to `isIntegralType()` is deemed ambiguous in the presence of `c10::isIntegralType()` -- but afaict that `c10` version isn't `using`'d into the global namespace, so I don't know why it conflicts. It'd be good to figure that out at some point, but this works for now. I also updated custom_kernel_example to stop using the `torch::` namespace. Differential Revision: D63476419 Reviewed By: swolchok
This pull request was exported from Phabricator. Differential Revision: D63476419 |
97e1fa5
to
ca66a33
Compare
This pull request has been merged in 5605954. |
@pytorchbot cherry-pick --onto release/0.4 -c fixnewfeature |
Summary: Pull Request resolved: #5709 I'm not sure how this worked before, but these sites called functions under torch::executor without actually qualifying them. Qualify them explicitly, because the "can call without qualification" magic stops working when we move the etensor types in D63294217. In a few places I used `namespace etrt = executorch::runtime;` instead of a using statement for a particular function, like `etrt::isIntegralType`. If I just say `using executorch::runtime::isIntegralType`, those files fail in aten mode because the unqualified call to `isIntegralType()` is deemed ambiguous in the presence of `c10::isIntegralType()` -- but afaict that `c10` version isn't `using`'d into the global namespace, so I don't know why it conflicts. It'd be good to figure that out at some point, but this works for now. I also updated custom_kernel_example to stop using the `torch::` namespace. Reviewed By: swolchok Differential Revision: D63476419 fbshipit-source-id: 2300fc1fa5d5af6f6f747d3a0c31db5099389dcc (cherry picked from commit 5605954)
Cherry picking #5709The cherry pick PR is at #5772 and it is recommended to link a fixnewfeature cherry pick PR with an issue. The following tracker issues are updated: Details for Dev Infra teamRaised by workflow job |
Fix unqualified uses of executorch functions (#5709) Summary: Pull Request resolved: #5709 I'm not sure how this worked before, but these sites called functions under torch::executor without actually qualifying them. Qualify them explicitly, because the "can call without qualification" magic stops working when we move the etensor types in D63294217. In a few places I used `namespace etrt = executorch::runtime;` instead of a using statement for a particular function, like `etrt::isIntegralType`. If I just say `using executorch::runtime::isIntegralType`, those files fail in aten mode because the unqualified call to `isIntegralType()` is deemed ambiguous in the presence of `c10::isIntegralType()` -- but afaict that `c10` version isn't `using`'d into the global namespace, so I don't know why it conflicts. It'd be good to figure that out at some point, but this works for now. I also updated custom_kernel_example to stop using the `torch::` namespace. Reviewed By: swolchok Differential Revision: D63476419 fbshipit-source-id: 2300fc1fa5d5af6f6f747d3a0c31db5099389dcc (cherry picked from commit 5605954) Co-authored-by: Dave Bort <dbort@meta.com>
Summary:
I'm not sure how this worked before, but these sites called functions under torch::executor without actually qualifying them. Qualify them explicitly, because the "can call without qualification" magic stops working when we move the etensor types in D63294217.
In a few places I used
namespace etrt = executorch::runtime;
instead of a using statement for a particular function, likeetrt::isIntegralType
. If I just sayusing executorch::runtime::isIntegralType
, those files fail in aten mode because the unqualified call toisIntegralType()
is deemed ambiguous in the presence ofc10::isIntegralType()
-- but afaict thatc10
version isn'tusing
'd into the global namespace, so I don't know why it conflicts. It'd be good to figure that out at some point, but this works for now.Differential Revision: D63476419