From 063e5cfbb627b4bfb7b360ea46f0e7cac0ddc932 Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Sat, 22 Feb 2020 23:07:54 +0100 Subject: [PATCH 1/3] dmd.dtoh: Remove unused imports --- src/dmd/dtoh.d | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/dmd/dtoh.d b/src/dmd/dtoh.d index 869142211434..826b90b11a16 100644 --- a/src/dmd/dtoh.d +++ b/src/dmd/dtoh.d @@ -22,12 +22,7 @@ import dmd.astcodegen; import dmd.arraytypes; import dmd.globals; import dmd.identifier; -import dmd.json; -import dmd.mars; -import dmd.root.array; -import dmd.root.file; import dmd.root.filename; -import dmd.root.rmem; import dmd.visitor; import dmd.tokens; From c71e8c752ac84053d79d63d1a868cbed818dcbb1 Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Sat, 22 Feb 2020 23:59:56 +0100 Subject: [PATCH 2/3] dmd.dtoh: export genCppHdrFiles to C++ --- src/dmd/dtoh.d | 2 +- src/dmd/hdrgen.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/dmd/dtoh.d b/src/dmd/dtoh.d index 826b90b11a16..b38ee0735ced 100644 --- a/src/dmd/dtoh.d +++ b/src/dmd/dtoh.d @@ -188,7 +188,7 @@ private void initialize() } } -void genCppHdrFiles(ref Modules ms) +extern(C++) void genCppHdrFiles(ref Modules ms) { initialize(); diff --git a/src/dmd/hdrgen.h b/src/dmd/hdrgen.h index 2478a6563689..a945c77b4a7c 100644 --- a/src/dmd/hdrgen.h +++ b/src/dmd/hdrgen.h @@ -16,5 +16,6 @@ class Module; void genhdrfile(Module *m); +void genCppHdrFiles(Modules &ms); void moduleToBuffer(OutBuffer *buf, Module *m); const char *parametersTypeToChars(ParameterList pl); From 5b4732101595a2960bf228545a32d73dd005df00 Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Sun, 23 Feb 2020 00:10:12 +0100 Subject: [PATCH 3/3] dmd.dtoh: Use __VENDOR__ and __VERSION__ in generated header --- src/dmd/dtoh.d | 4 ++-- test/compilable/dtoh_AliasDeclaration.d | 4 ++-- test/compilable/dtoh_AnonDeclaration.d | 4 ++-- test/compilable/dtoh_ClassDeclaration.d | 4 ++-- test/compilable/dtoh_StructDeclaration.d | 4 ++-- test/compilable/dtoh_TemplateDeclaration.d | 4 ++-- test/compilable/dtoh_VarDeclaration.d | 4 ++-- test/compilable/dtoh_enum.d | 4 ++-- test/compilable/dtoh_functions.d | 4 ++-- test/compilable/dtoh_unittest_block.d | 4 ++-- 10 files changed, 20 insertions(+), 20 deletions(-) diff --git a/src/dmd/dtoh.d b/src/dmd/dtoh.d index b38ee0735ced..d40464daff36 100644 --- a/src/dmd/dtoh.d +++ b/src/dmd/dtoh.d @@ -193,9 +193,9 @@ extern(C++) void genCppHdrFiles(ref Modules ms) initialize(); OutBuffer buf; - buf.writestring("#pragma once\n"); + buf.printf("// Automatically generated by %s Compiler v%d\n", global.vendor.ptr, global.versionNumber()); buf.writeByte('\n'); - buf.printf("// Automatically generated by dmd -HC\n"); + buf.writestring("#pragma once\n"); buf.writeByte('\n'); buf.writestring("#include \n"); buf.writestring("#include \n"); diff --git a/test/compilable/dtoh_AliasDeclaration.d b/test/compilable/dtoh_AliasDeclaration.d index 1314e2b6b1db..fd62a5f284f6 100644 --- a/test/compilable/dtoh_AliasDeclaration.d +++ b/test/compilable/dtoh_AliasDeclaration.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_AnonDeclaration.d b/test/compilable/dtoh_AnonDeclaration.d index c55b07638037..468ae94d75ea 100644 --- a/test/compilable/dtoh_AnonDeclaration.d +++ b/test/compilable/dtoh_AnonDeclaration.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_ClassDeclaration.d b/test/compilable/dtoh_ClassDeclaration.d index 2e2a65eb9de2..3ff8e96c57a0 100644 --- a/test/compilable/dtoh_ClassDeclaration.d +++ b/test/compilable/dtoh_ClassDeclaration.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_StructDeclaration.d b/test/compilable/dtoh_StructDeclaration.d index ec31b974f003..57759929e462 100644 --- a/test/compilable/dtoh_StructDeclaration.d +++ b/test/compilable/dtoh_StructDeclaration.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_TemplateDeclaration.d b/test/compilable/dtoh_TemplateDeclaration.d index 857d1a214099..522c44a16beb 100644 --- a/test/compilable/dtoh_TemplateDeclaration.d +++ b/test/compilable/dtoh_TemplateDeclaration.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_VarDeclaration.d b/test/compilable/dtoh_VarDeclaration.d index 545564833d19..e34bb86e1791 100644 --- a/test/compilable/dtoh_VarDeclaration.d +++ b/test/compilable/dtoh_VarDeclaration.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_enum.d b/test/compilable/dtoh_enum.d index 0e3381fce2c5..a7238e253861 100644 --- a/test/compilable/dtoh_enum.d +++ b/test/compilable/dtoh_enum.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_functions.d b/test/compilable/dtoh_functions.d index 5071bd7206eb..a4760208a7c1 100644 --- a/test/compilable/dtoh_functions.d +++ b/test/compilable/dtoh_functions.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include diff --git a/test/compilable/dtoh_unittest_block.d b/test/compilable/dtoh_unittest_block.d index 965c66ae34ba..763ba9190f3a 100644 --- a/test/compilable/dtoh_unittest_block.d +++ b/test/compilable/dtoh_unittest_block.d @@ -3,9 +3,9 @@ REQUIRED_ARGS: -HC -c -o- PERMUTE_ARGS: TEST_OUTPUT: --- -#pragma once +// Automatically generated by Digital Mars D Compiler v$n$ -// Automatically generated by dmd -HC +#pragma once #include #include