gcc/libphobos/libdruntime/core/sys/windows/richole.d
Iain Buclaw 7e7ebe3e35 d: Merge upstream dmd, druntime e4f8919591, phobos 3ad507b51.
D front-end changes:

    - Import dmd v2.101.0-beta.1.
    - Add predefined version `D_Optimized' when compiling with `-O'.
    - Shortened method syntax (DIP1043) is now enabled by default.
    - Array literals assigned to `scope' array variables are now
      allocated on the stack.
    - Implement `@system' variables (DIP1035), available behind the
      preview feature flag `-fpreview=systemvariables'.

D runtime changes:

    - Import druntime v2.101.0-beta.1.

Phobos changes:

    - Import phobos v2.101.0-beta.1.
    - Added `std.typecons.SafeRefCounted', that can be used in `@safe'
      code with `-fpreview=dip1000'.

gcc/d/ChangeLog:

	* d-attribs.cc (apply_user_attributes): Update for new front-end
	interface.
	* d-builtins.cc (d_init_versions): Predefine `D_Optimized' with
	compiling with optimizations enabled.
	* d-lang.cc (d_handle_option): Update for new front-end interface.
	Handle new option `-fpreview=systemvariables'.
	* dmd/MERGE: Merge upstream dmd e4f8919591.
	* dmd/VERSION: Bump version to v2.101.0-beta.1.
	* expr.cc (ExprVisitor::visit (AssignExp *)): Treat construction of
	static arrays from a call expression as a simple assignment.
	(ExprVisitor::visit (ArrayLiteralExp *)): Handle array literals with
	`scope' storage.
	* gdc.texi: Update documentation of `-fpreview=' options.
	* lang.opt (fpreview=shortenedmethods): Remove.
	(fpreview=systemvariables):  New option.

libphobos/ChangeLog:

	* libdruntime/MERGE: Merge upstream druntime e4f8919591.
	* src/MERGE: Merge upstream phobos 3ad507b51.

gcc/testsuite/ChangeLog:

	* gdc.dg/simd19630.d: Move tests with errors to ...
	* gdc.dg/simd19630b.d: ... here.  New test.
	* gdc.dg/simd19630c.d: New test.
	* gdc.dg/simd_ctfe.d: Removed.
	* gdc.dg/simd18867.d: New test.
	* gdc.dg/simd19788.d: New test.
	* gdc.dg/simd21469.d: New test.
	* gdc.dg/simd21672.d: New test.
	* gdc.dg/simd23077.d: New test.
	* gdc.dg/simd23084.d: New test.
	* gdc.dg/simd23085.d: New test.
	* gdc.dg/torture/simd19632.d: New test.
	* gdc.dg/torture/simd20041.d: New test.
	* gdc.dg/torture/simd21673.d: New test.
	* gdc.dg/torture/simd21676.d: New test.
	* gdc.dg/torture/simd22438.d: New test.
	* gdc.dg/torture/simd23009.d: New test.
	* gdc.dg/torture/simd23077.d: New test.
	* gdc.dg/torture/simd8.d: New test.
	* gdc.dg/torture/simd9.d: New test.
	* gdc.dg/torture/simd_prefetch.d: New test.
2022-10-29 13:02:26 +02:00

101 lines
3 KiB
D

/**
* Windows API header module
*
* Translated from MinGW Windows headers
*
* License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
* Source: $(DRUNTIMESRC core/sys/windows/_richole.d)
*/
module core.sys.windows.richole;
version (Windows):
import core.sys.windows.objfwd, core.sys.windows.objidl, core.sys.windows.ole2, core.sys.windows.unknwn,
core.sys.windows.windef;
import core.sys.windows.richedit; // for CHARRANGE
//align(4):
enum ULONG
REO_GETOBJ_NO_INTERFACES = 0,
REO_GETOBJ_POLEOBJ = 1,
REO_GETOBJ_PSTG = 2,
REO_GETOBJ_POLESITE = 4,
REO_GETOBJ_ALL_INTERFACES = 7,
REO_CP_SELECTION = -1,
REO_IOB_SELECTION = -1,
REO_IOB_USE_CP = -2,
REO_NULL = 0,
REO_READWRITEMASK = 0x3F,
REO_DONTNEEDPALETTE = 32,
REO_BLANK = 16,
REO_DYNAMICSIZE = 8,
REO_INVERTEDSELECT = 4,
REO_BELOWBASELINE = 2,
REO_RESIZABLE = 1,
REO_LINK = 0x80000000,
REO_STATIC = 0x40000000,
REO_SELECTED = 0x08000000,
REO_OPEN = 0x4000000,
REO_INPLACEACTIVE = 0x2000000,
REO_HILITED = 0x1000000,
REO_LINKAVAILABLE = 0x800000,
REO_GETMETAFILE = 0x400000;
enum {
RECO_PASTE = 0,
RECO_DROP,
RECO_COPY,
RECO_CUT,
RECO_DRAG // = 4
}
extern (C) extern const GUID
IID_IRichEditOle,
IID_IRichEditOleCallback;
struct REOBJECT {
DWORD cbStruct = REOBJECT.sizeof;
LONG cp;
CLSID clsid;
LPOLEOBJECT poleobj;
LPSTORAGE pstg;
LPOLECLIENTSITE polesite;
SIZEL sizel;
DWORD dvaspect;
DWORD dwFlags;
DWORD dwUser;
}
interface IRichEditOle : IUnknown {
HRESULT GetClientSite(LPOLECLIENTSITE*);
LONG GetObjectCount();
LONG GetLinkCount();
HRESULT GetObject(LONG, REOBJECT*, DWORD);
HRESULT InsertObject(REOBJECT*);
HRESULT ConvertObject(LONG, REFCLSID, LPCSTR);
HRESULT ActivateAs(REFCLSID, REFCLSID);
HRESULT SetHostNames(LPCSTR, LPCSTR);
HRESULT SetLinkAvailable(LONG, BOOL);
HRESULT SetDvaspect(LONG, DWORD);
HRESULT HandsOffStorage(LONG);
HRESULT SaveCompleted(LONG, LPSTORAGE);
HRESULT InPlaceDeactivate();
HRESULT ContextSensitiveHelp(BOOL);
HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*);
HRESULT ImportDataObject(LPDATAOBJECT, CLIPFORMAT, HGLOBAL);
}
alias IRichEditOle LPRICHEDITOLE;
interface IRichEditOleCallback : IUnknown {
HRESULT GetNewStorage(LPSTORAGE*);
HRESULT GetInPlaceContext(LPOLEINPLACEFRAME*, LPOLEINPLACEUIWINDOW*, LPOLEINPLACEFRAMEINFO);
HRESULT ShowContainerUI(BOOL);
HRESULT QueryInsertObject(LPCLSID, LPSTORAGE, LONG);
HRESULT DeleteObject(LPOLEOBJECT);
HRESULT QueryAcceptData(LPDATAOBJECT, CLIPFORMAT*, DWORD, BOOL, HGLOBAL);
HRESULT ContextSensitiveHelp(BOOL);
HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*);
HRESULT GetDragDropEffect(BOOL, DWORD, PDWORD);
HRESULT GetContextMenu(WORD, LPOLEOBJECT, CHARRANGE*, HMENU*);
}
alias IRichEditOleCallback LPRICHEDITOLECALLBACK;