blob: 5119e75a30ef8111dc286a7e95847b3dd763b771 [file] [log] [blame]
// Copyright 2020 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.
library conformance;
struct RecursiveOptionalStruct {
RecursiveOptionalStruct? inner;
};
// Wrap with an extra layer of struct and array which should not add any more
// out of line recursion depth.
struct RecursiveOptionalStructArrayWrapper {
array<RecursiveOptionalStruct>:1 arr;
};
union RecursiveOptionalAndUnion {
1: RecursiveOptionalStruct recursive_optional;
};
struct RecursiveOptionalAndUnionStruct {
RecursiveOptionalAndUnion u;
};
table RecursiveOptionalAndTable {
1: RecursiveOptionalStruct recursive_optional;
};
struct RecursiveOptionalAndTableStruct {
RecursiveOptionalAndTable t;
};
struct RecursiveOptionalAndVectorStruct {
vector<RecursiveOptionalStruct> vec;
};
struct RecursiveOptionalStructWithString {
RecursiveOptionalStructWithString? inner;
string? str;
};