2 * Declarations for back-end functions that the front-end invokes.
4 * This 'glues' either the DMC or GCC back-end to the front-end.
6 * Copyright: Copyright (C) 1999-2021 by The D Language Foundation, All Rights Reserved
7 * Authors: $(LINK2 http://www.digitalmars.com, Walter Bright)
8 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
9 * Source: $(LINK2 https://github.com/dlang/dmd/blob/master/src/dmd/gluelayer.d, _gluelayer.d)
10 * Documentation: https://dlang.org/phobos/dmd_gluelayer.html
11 * Coverage: https://codecov.io/gh/dlang/dmd/src/master/src/dmd/gluelayer.d
36 Statement
asmSemantic(AsmStatement s
, Scope
* sc
)
38 sc
.func
.hasReturnExp
= 8;
43 void toObjFile(Dsymbol
ds, bool multiobj
) {}
45 extern(C
++) abstract class ObjcGlue
47 static void initialize() {}
53 public import dmd
.backend
.cc
: block
, Blockx
, Symbol
;
54 public import dmd
.backend
.type
: type
;
55 public import dmd
.backend
.el
: elem
;
56 public import dmd
.backend
.code_x86
: code
;
60 Statement
asmSemantic(AsmStatement s
, Scope
* sc
);
62 void toObjFile(Dsymbol
ds, bool multiobj
);
64 extern(C
++) abstract class ObjcGlue
66 static void initialize();
72 extern (C
++) union tree_node
;
74 alias Symbol
= tree_node
;
75 alias code
= tree_node
;
76 alias type
= tree_node
;
80 Statement
asmSemantic(AsmStatement s
, Scope
* sc
);
81 void toObjFile(Dsymbol
ds, bool multiobj
);
85 extern(C
++) abstract class ObjcGlue
87 static void initialize() {}
91 static assert(false, "Unsupported compiler backend");