mirror of
https://github.com/openRuyi-Project/gcc.git
synced 2026-09-06 14:01:37 +00:00
D front-end changes:
- Import dmd v2.108.1-beta-1.
D runtime changes:
- Import druntime v2.108.1-beta-1.
Phobos changes:
- Import phobos v2.108.1-beta-1.
gcc/d/ChangeLog:
* dmd/MERGE: Merge upstream dmd f8bae04558.
* dmd/VERSION: Bump version to v2.108.0-beta.1.
* d-builtins.cc (build_frontend_type): Update for new front-end
interface.
* d-codegen.cc (build_assert_call): Likewise.
* d-convert.cc (d_array_convert): Likewise.
* decl.cc (get_vtable_decl): Likewise.
* expr.cc (ExprVisitor::visit (EqualExp *)): Likewise.
(ExprVisitor::visit (VarExp *)): Likewise.
(ExprVisitor::visit (ArrayLiteralExp *)): Likewise.
(ExprVisitor::visit (AssocArrayLiteralExp)): Likewise.
* intrinsics.cc (build_shuffle_mask_type): Likewise.
(maybe_warn_intrinsic_mismatch): Likewise.
* runtime.cc (get_libcall_type): Likewise.
* typeinfo.cc (TypeInfoVisitor::layout_string): Likewise.
(TypeInfoVisitor::visit(TypeInfoTupleDeclaration *)): Likewise.
libphobos/ChangeLog:
* libdruntime/MERGE: Merge upstream druntime 02d6d07a69.
* src/MERGE: Merge upstream phobos a2ade9dec.
62 lines
1.7 KiB
D
62 lines
1.7 KiB
D
/*******************************************************************************
|
|
|
|
D binding for the interface addresses querying
|
|
|
|
Defines functions getifaddrs/freeifaddrs and the structure
|
|
they operate on.
|
|
|
|
getifaddrs(3) get interface addresses
|
|
freeifaddrs(3) deallocates the structure returned from getifaddrs
|
|
|
|
Copyright: Copyright (c) 2016 Sociomantic Labs. All rights reserved.
|
|
License: $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
|
|
Authors: Nemanja Boric
|
|
|
|
*******************************************************************************/
|
|
|
|
module core.sys.linux.ifaddrs;
|
|
|
|
import core.sys.posix.sys.socket;
|
|
|
|
version (linux):
|
|
extern (C):
|
|
nothrow:
|
|
@nogc:
|
|
|
|
struct ifaddrs
|
|
{
|
|
/// Next item in the list
|
|
ifaddrs* ifa_next;
|
|
/// Name of the interface
|
|
char* ifa_name;
|
|
/// Flags from SIOCGIFFLAGS
|
|
uint ifa_flags;
|
|
/// Address of interface
|
|
sockaddr* ifa_addr;
|
|
/// Netmask of interface
|
|
sockaddr* ifa_netmask;
|
|
|
|
union
|
|
{
|
|
/// Broadcast address of the interface
|
|
sockaddr* ifa_broadaddr;
|
|
|
|
/// Point-to-point destination addresss
|
|
sockaddr* ifa_dstaddr;
|
|
}
|
|
|
|
deprecated("druntime declared this incorrectly before. The correct name is ifa_broadaddr.")
|
|
alias ifu_broadaddr = ifa_broadaddr;
|
|
|
|
deprecated("druntime declared this incorrectly before. The correct name is ifa_dstaddr.")
|
|
alias if_dstaddr = ifa_dstaddr;
|
|
|
|
/// Address specific data
|
|
void* ifa_data;
|
|
}
|
|
|
|
/// Returns: linked list of ifaddrs structures describing interfaces
|
|
int getifaddrs(ifaddrs** );
|
|
/// Frees the linked list returned by getifaddrs
|
|
void freeifaddrs(ifaddrs* );
|