| #include <gtest/gtest.h> |
| |
| #include <torch/torch.h> |
| |
| struct Node {}; |
| |
| // If `torch::autograd::Note` is leaked into the root namespace, the following compile error would throw: |
| // ``` |
| // void NotLeakingSymbolsFromTorchAutogradNamespace_test_func(Node *node) {} |
| // ^ |
| // error: reference to `Node` is ambiguous |
| // ``` |
| void NotLeakingSymbolsFromTorchAutogradNamespace_test_func(Node *node) {} |
| |
| TEST(NamespaceTests, NotLeakingSymbolsFromTorchAutogradNamespace) { |
| // Checks that we are not leaking symbols from the |
| // `torch::autograd` namespace to the root namespace |
| NotLeakingSymbolsFromTorchAutogradNamespace_test_func(nullptr); |
| } |