// Copyright 2019 The Fuchsia Authors
//
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT

#include <lib/abi_type_validator.h>

// By including this header, we ensure the kernel's view of various ABI types matches usermode's
// view. See also lib/abi_type_validator.h.
