From dbef952cc98178434d8707496cd1f52fcdf9833d Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sat, 7 Mar 2026 13:36:53 +0100 Subject: [CHORE] Source code tweaks. Signed-off-by: Amlal El Mahrouss --- .../src/CodeGenerator+AssemblyFactory.cpp | 4 ++-- .../src/Linkers/DynamicLinker64+PEF.cpp | 1 - .../src/Preprocessors/Preprocessor+Generic.cpp | 6 ++--- .../test/Linkers/DynamicLinker64+MachO.test.cc | 28 ---------------------- .../test/Linkers/DynamicLinker64+MachO.test.cpp | 28 ++++++++++++++++++++++ .../test/Linkers/DynamicLinker64+PEF.test.cc | 28 ---------------------- .../test/Linkers/DynamicLinker64+PEF.test.cpp | 28 ++++++++++++++++++++++ .../test/Linkers/ck-linker-test-osx-posix.json | 2 +- .../test/Linkers/ck-linker-test-pef-posix.json | 2 +- 9 files changed, 63 insertions(+), 64 deletions(-) delete mode 100644 src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cc create mode 100644 src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp delete mode 100644 src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cc create mode 100644 src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp (limited to 'src/CompilerKit') diff --git a/src/CompilerKit/src/CodeGenerator+AssemblyFactory.cpp b/src/CompilerKit/src/CodeGenerator+AssemblyFactory.cpp index 2c5fde8..a2417ae 100644 --- a/src/CompilerKit/src/CodeGenerator+AssemblyFactory.cpp +++ b/src/CompilerKit/src/CodeGenerator+AssemblyFactory.cpp @@ -17,7 +17,7 @@ namespace CompilerKit { ///! @brief Compile for specific format (ELF, PEF, AE) Int32 AssemblyFactory::Compile(STLString sourceFile, const Int32& arch) { - if (sourceFile.length() < 1) return NECTAR_UNIMPLEMENTED; + if (sourceFile.length() == 0) return NECTAR_UNIMPLEMENTED; if (!this->fMounted) return NECTAR_UNIMPLEMENTED; if (arch != this->fMounted->Arch()) return NECTAR_INVALID_ARCH; @@ -27,7 +27,7 @@ Int32 AssemblyFactory::Compile(STLString sourceFile, const Int32& arch) { ///! @brief mount assembly backend. void AssemblyFactory::Mount(WeakRef mount_ptr) { - if (mount_ptr && !this->fMounted) { + if (mount_ptr.Leak() && !this->fMounted) { this->fMounted = mount_ptr.Leak(); } } diff --git a/src/CompilerKit/src/Linkers/DynamicLinker64+PEF.cpp b/src/CompilerKit/src/Linkers/DynamicLinker64+PEF.cpp index 476c7f7..c48bdb2 100644 --- a/src/CompilerKit/src/Linkers/DynamicLinker64+PEF.cpp +++ b/src/CompilerKit/src/Linkers/DynamicLinker64+PEF.cpp @@ -147,7 +147,6 @@ NECTAR_MODULE(DynamicLinker64PEF) { kOutput.erase(kOutput.find(kPefExt), strlen(kPefExt)); kOutput += kPefDylibExt; - is_executable = false; continue; diff --git a/src/CompilerKit/src/Preprocessors/Preprocessor+Generic.cpp b/src/CompilerKit/src/Preprocessors/Preprocessor+Generic.cpp index 49c2145..47df994 100644 --- a/src/CompilerKit/src/Preprocessors/Preprocessor+Generic.cpp +++ b/src/CompilerKit/src/Preprocessors/Preprocessor+Generic.cpp @@ -17,11 +17,11 @@ #define kMacroPrefix '#' /// @author Amlal El Mahrouss (amlal@nekernel.org) -/// @file Preprocessor+Generic.cc +/// @file Preprocessor+Generic.cpp /// @brief Nectar Preprocessor. -typedef Int32 (*pp_parser_fn_t)(CompilerKit::STLString& line, std::ifstream& hdr_file, - std::ofstream& pp_out); +using pp_parser_fn_t = Int32 (*)(CompilerKit::STLString&, std::ifstream&, + std::ofstream&); ///////////////////////////////////////////////////////////////////////////////////////// diff --git a/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cc b/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cc deleted file mode 100644 index f73d6fd..0000000 --- a/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cc +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2025-2026, Amlal El Mahrouss (amlal@nekernel.org) -// Distributed under the Boost Software License, Version 1.0. (See accompanying -// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -// Official repository: https://github.com/ne-foss-org/nectar - -/// @author Amlal El Mahrouss - -#include -#include - -CK_IMPORT_C Int32 DynamicLinker64MachO(Int32 argc, char** argv); - -static Int32 kArgc{}; -static char** kArgv{}; - -Int32 main(Int32 argc, char** argv) { - ::testing::InitGoogleTest(&argc, argv); - - kArgc = argc; - kArgv = argv; - - return RUN_ALL_TESTS(); -} - -TEST(LinkerRunMachO, LinkerExitsCorrectly) { - EXPECT_TRUE(kArgc > 1); - EXPECT_TRUE(DynamicLinker64MachO(kArgc, kArgv) == 0); -} diff --git a/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp b/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp new file mode 100644 index 0000000..f73d6fd --- /dev/null +++ b/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp @@ -0,0 +1,28 @@ +// Copyright 2025-2026, Amlal El Mahrouss (amlal@nekernel.org) +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// Official repository: https://github.com/ne-foss-org/nectar + +/// @author Amlal El Mahrouss + +#include +#include + +CK_IMPORT_C Int32 DynamicLinker64MachO(Int32 argc, char** argv); + +static Int32 kArgc{}; +static char** kArgv{}; + +Int32 main(Int32 argc, char** argv) { + ::testing::InitGoogleTest(&argc, argv); + + kArgc = argc; + kArgv = argv; + + return RUN_ALL_TESTS(); +} + +TEST(LinkerRunMachO, LinkerExitsCorrectly) { + EXPECT_TRUE(kArgc > 1); + EXPECT_TRUE(DynamicLinker64MachO(kArgc, kArgv) == 0); +} diff --git a/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cc b/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cc deleted file mode 100644 index 6c4d061..0000000 --- a/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cc +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2025-2026, Amlal El Mahrouss (amlal@nekernel.org) -// Distributed under the Boost Software License, Version 1.0. (See accompanying -// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -// Official repository: https://github.com/ne-foss-org/nectar - -/// @author Amlal El Mahrouss - -#include -#include - -CK_IMPORT_C Int32 DynamicLinker64PEF(Int32 argc, char** argv); - -static Int32 kArgc{}; -static char** kArgv{}; - -Int32 main(Int32 argc, char** argv) { - ::testing::InitGoogleTest(&argc, argv); - - kArgc = argc; - kArgv = argv; - - return RUN_ALL_TESTS(); -} - -TEST(LinkerRunPEF, LinkerExitsCorrectly) { - EXPECT_TRUE(kArgc > 1); - EXPECT_TRUE(DynamicLinker64PEF(kArgc, kArgv) == 0); -} diff --git a/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp b/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp new file mode 100644 index 0000000..6c4d061 --- /dev/null +++ b/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp @@ -0,0 +1,28 @@ +// Copyright 2025-2026, Amlal El Mahrouss (amlal@nekernel.org) +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// Official repository: https://github.com/ne-foss-org/nectar + +/// @author Amlal El Mahrouss + +#include +#include + +CK_IMPORT_C Int32 DynamicLinker64PEF(Int32 argc, char** argv); + +static Int32 kArgc{}; +static char** kArgv{}; + +Int32 main(Int32 argc, char** argv) { + ::testing::InitGoogleTest(&argc, argv); + + kArgc = argc; + kArgv = argv; + + return RUN_ALL_TESTS(); +} + +TEST(LinkerRunPEF, LinkerExitsCorrectly) { + EXPECT_TRUE(kArgc > 1); + EXPECT_TRUE(DynamicLinker64PEF(kArgc, kArgv) == 0); +} diff --git a/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json b/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json index 0f197d1..9c8578e 100644 --- a/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json +++ b/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json @@ -9,7 +9,7 @@ "/usr/include/" ], "sources_path": [ - "DynamicLinker64+MachO.test.cc" + "DynamicLinker64+MachO.test.cpp" ], "output_name": "LinkerTest.o", "compiler_flags": [ diff --git a/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json b/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json index 97e8604..1692e51 100644 --- a/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json +++ b/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json @@ -9,7 +9,7 @@ "/usr/include/" ], "sources_path": [ - "DynamicLinker64+PEF64.test.cc" + "DynamicLinker64+PEF.test.cpp" ], "output_name": "LinkerTest.o", "compiler_flags": [ -- cgit v1.2.3 From 9b9a5b20b95f82b7adf5698fcc12915acf6f7b92 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sat, 7 Mar 2026 13:48:32 +0100 Subject: [CHORE] Patching unit tests for Linkers on Linux. Signed-off-by: Amlal El Mahrouss --- src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp | 1 - src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp | 1 - src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json | 2 +- src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json | 5 ++--- 4 files changed, 3 insertions(+), 6 deletions(-) (limited to 'src/CompilerKit') diff --git a/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp b/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp index f73d6fd..a08abc5 100644 --- a/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp +++ b/src/CompilerKit/test/Linkers/DynamicLinker64+MachO.test.cpp @@ -23,6 +23,5 @@ Int32 main(Int32 argc, char** argv) { } TEST(LinkerRunMachO, LinkerExitsCorrectly) { - EXPECT_TRUE(kArgc > 1); EXPECT_TRUE(DynamicLinker64MachO(kArgc, kArgv) == 0); } diff --git a/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp b/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp index 6c4d061..7cd3645 100644 --- a/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp +++ b/src/CompilerKit/test/Linkers/DynamicLinker64+PEF.test.cpp @@ -23,6 +23,5 @@ Int32 main(Int32 argc, char** argv) { } TEST(LinkerRunPEF, LinkerExitsCorrectly) { - EXPECT_TRUE(kArgc > 1); EXPECT_TRUE(DynamicLinker64PEF(kArgc, kArgv) == 0); } diff --git a/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json b/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json index 9c8578e..14eb174 100644 --- a/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json +++ b/src/CompilerKit/test/Linkers/ck-linker-test-osx-posix.json @@ -11,7 +11,7 @@ "sources_path": [ "DynamicLinker64+MachO.test.cpp" ], - "output_name": "LinkerTest.o", + "output_name": "LinkerTest+OSX.o", "compiler_flags": [ "-fPIC", "-lgtest", diff --git a/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json b/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json index 1692e51..b1ee0d7 100644 --- a/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json +++ b/src/CompilerKit/test/Linkers/ck-linker-test-pef-posix.json @@ -11,11 +11,10 @@ "sources_path": [ "DynamicLinker64+PEF.test.cpp" ], - "output_name": "LinkerTest.o", + "output_name": "LinkerTest+PEF.o", "compiler_flags": [ "-fPIC", - "-lgtest", - "-lCompilerKit" + "-lgtest" ], "cpp_macros": [ "__NECTAR__=202505", -- cgit v1.2.3