blob: fd6b0ba89a4c2314597d453cc7353cc6ca5cf5cf [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include <fidl/test/misc/cpp/fidl.h>
#include <gtest/gtest.h>
namespace fidl {
namespace {
// Confirms that a protocol can have a method that returns a protocol whose
// type name is the same as the method's. Prior to a change which added the
// "class" modifier to the generated proxy's method signature, the identifier
// was ambiguous and the generated header did not compile.
TEST(Collision, Compiles) {
zx::channel ch;
fidl::InterfaceHandle<class test::misc::NameCollision> collision;
test::misc::ReturnsCollision_SyncProxy proxy(std::move(ch));
proxy.NameCollision(&collision);
}
} // namespace
} // namespace fidl