gcc/libphobos/libdruntime/core/sys/posix/utime.d
Iain Buclaw 8da8c7d337 d: Merge upstream dmd, druntime 4ca4140e58, phobos 454dff14d.
D front-end changes:

	- Import dmd v2.103.0-beta.1.
	- Using `alias this' for classes has been deprecated.
	- The feature `-fpreview=dip25` is now enabled by default.
	- The compile-time traits `isVirtualFunction' and
	  `getVirtualFunctions' have been deprecated.

D runtime changes:

	- Import druntime v2.103.0-beta.1.

Phobos changes:

	- Import phobos v2.103.0-beta.1.
	- Updated unicode grapheme walking updated to conform to Unicode
	  version 15.
	- Improved friendliness of error messages when instantiating
	  `std.algorithm.iteration.joiner' and
	  `std.algorithm.sorting.sort' with wrong inputs.

gcc/d/ChangeLog:

	* dmd/MERGE: Merge upstream dmd 4ca4140e58.
	* dmd/VERSION: Bump version to v2.103.0-beta.1.
	* Make-lang.in (D_FRONTEND_OBJS): Add d/errorsink.o.
	* d-ctfloat.cc (CTFloat::sprint): Update signature for new front-end
	interface.
	* d-frontend.cc (getTypeInfoType): Likewise.
	* d-lang.cc (d_handle_option): Remove handling of -fpreview=dip25 and
	-frevert=dip25.
	(d_post_options): Remove enabling of sealed references language
	feature when scoped pointers is enabled.
	* d-tree.h (create_typeinfo): Update signature.
	* decl.cc (DeclVisitor::finish_vtable): Update for new front-end
	interface.
	(DeclVisitor::visit (VarDeclaration *)): Likewise.
	(DeclVisitor::visit (FuncDeclaration *)): Check skipCodegen to see if
	front-end explicitly requested not to generate code.
	* expr.cc (ExprVisitor::visit (NewExp *)): Update for new front-end
	interface.
	* lang.opt (fpreview=dip25): Remove.
	(frevert=dip25): Remove.
	* modules.cc (layout_moduleinfo_fields): Update for new front-end
	interface.
	(layout_moduleinfo): Likewise.
	* runtime.def (NEWCLASS): Remove.
	* toir.cc (IRVisitor::visit (IfStatement *)): Don't generate IR for if
	statement list when condition is `__ctfe'.
	* typeinfo.cc (create_typeinfo): Add generate parameter.
	* types.cc (layout_aggregate_members): Update for new front-end
	interface.

libphobos/ChangeLog:

	* libdruntime/MERGE: Merge upstream druntime 4ca4140e58.
	* libdruntime/Makefile.am (DRUNTIME_DSOURCES): Add core/factory.d.
	* libdruntime/Makefile.in: Regenerate.
	* src/MERGE: Merge upstream phobos 454dff14d.
	* testsuite/libphobos.hash/test_hash.d: Update test.
	* testsuite/libphobos.shared/finalize.d: Update test.
	* libdruntime/core/factory.d: New file.

gcc/testsuite/ChangeLog:

	* gdc.dg/torture/simd23084.d: New test.
	* gdc.dg/torture/simd23085.d: New test.
	* gdc.dg/torture/simd23218.d: New test.
2023-03-16 17:29:57 +01:00

147 lines
2.6 KiB
D

/**
* D header file for POSIX.
*
* Copyright: Copyright Sean Kelly 2005 - 2009.
* License: $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0).
* Authors: Sean Kelly
* Standards: The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition
*/
/* Copyright Sean Kelly 2005 - 2009.
* Distributed under the Boost Software License, Version 1.0.
* (See accompanying file LICENSE or copy at
* http://www.boost.org/LICENSE_1_0.txt)
*/
module core.sys.posix.utime;
import core.sys.posix.config;
public import core.sys.posix.sys.types; // for time_t
version (OSX)
version = Darwin;
else version (iOS)
version = Darwin;
else version (TVOS)
version = Darwin;
else version (WatchOS)
version = Darwin;
version (Posix):
extern (C):
nothrow:
@nogc:
//
// Required
//
/*
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
*/
version (CRuntime_Glibc)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (CRuntime_Musl)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
pragma(mangle, muslRedirTime64Mangle!("utime", "__utime64"))
int utime(const scope char*, const scope utimbuf*);
}
else version (Darwin)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (FreeBSD)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (NetBSD)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (OpenBSD)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (DragonFlyBSD)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (Solaris)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (CRuntime_Bionic)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}
else version (CRuntime_UClibc)
{
struct utimbuf
{
time_t actime;
time_t modtime;
}
int utime(const scope char*, const scope utimbuf*);
}