Merge dmd upstream 6243fa6d2
[official-gcc.git] / gcc / d / dmd / version.h
blobcdff1a873fcf34ab0df7fc249e77380aacc0d56c
2 /* Compiler implementation of the D programming language
3 * Copyright (C) 1999-2018 by The D Language Foundation, All Rights Reserved
4 * written by Walter Bright
5 * http://www.digitalmars.com
6 * Distributed under the Boost Software License, Version 1.0.
7 * http://www.boost.org/LICENSE_1_0.txt
8 * https://github.com/dlang/dmd/blob/master/src/version.h
9 */
11 #pragma once
13 #include "dsymbol.h"
15 class DebugSymbol : public Dsymbol
17 public:
18 unsigned level;
20 DebugSymbol(Loc loc, Identifier *ident);
21 DebugSymbol(Loc loc, unsigned level);
22 Dsymbol *syntaxCopy(Dsymbol *);
24 const char *toChars();
25 void addMember(Scope *sc, ScopeDsymbol *sds);
26 void semantic(Scope *sc);
27 const char *kind() const;
28 void accept(Visitor *v) { v->visit(this); }
31 class VersionSymbol : public Dsymbol
33 public:
34 unsigned level;
36 VersionSymbol(Loc loc, Identifier *ident);
37 VersionSymbol(Loc loc, unsigned level);
38 Dsymbol *syntaxCopy(Dsymbol *);
40 const char *toChars();
41 void addMember(Scope *sc, ScopeDsymbol *sds);
42 void semantic(Scope *sc);
43 const char *kind() const;
44 void accept(Visitor *v) { v->visit(this); }