Commit Graph

767 Commits

Author SHA1 Message Date
Username404 7aae055651
Fix the Jenkinsfile and remove the useless CMake 3.22.0 warning 2022-02-14 14:12:00 +01:00
Username404 158021cf68
Fix the indentation of a line modified by the previous commit 2022-02-14 14:12:00 +01:00
Username404-59 173ed5d6c3
Add a parsingError() function to Parser.hpp 2022-02-14 14:12:00 +01:00
Username404 a098973023
Throw an exception when a final variable is being redefined, and use types instead of auto in the ParseTree::findReferenceByName() method and when calling it in Parser.hpp 2022-02-14 14:12:00 +01:00
Username404 c9a6a6c918
Remove a useless condition and two unnecessary parentheses in lexer.cpp 2022-02-14 14:12:00 +01:00
Username404-59 3c4586cc70
Add "ASTERISK" and "DIVIDE" token types to lex.hpp, and implement comments 2022-02-14 14:12:00 +01:00
Username404 37b7cbb16d
Include CMAKE_VERSION in the CPack 3.21.1 warning, just in case the condition needs to be changed in a future version 2022-02-14 14:12:00 +01:00
Username404 458d272088
Only reassign exit_code when it is meant to be EXIT_FAILURE 2022-02-14 14:12:00 +01:00
Username404 30ae9d7369
Remove a useless space in main.cpp 2022-02-14 14:12:00 +01:00
Username404 fd7ae6197c
Improve the message shown when position-independent code is not supported 2022-02-14 14:12:00 +01:00
Username404 d687544519
Add interprocedural optimization flags only when they are supported if clang is in use 2022-02-14 14:12:00 +01:00
Username404 c2f70924ef
Make the check_cxx_compiler_flag invocation lowercase 2022-02-14 14:12:00 +01:00
Username404 08661d83a3
Add an explicit return type to the nextAre function 2022-02-14 14:12:00 +01:00
Username404-59 99898da83a
Make the variables in the Jenkinsfile final 2022-02-14 14:12:00 +01:00
Username404 70466cdb80
Demangle the name of components when a GNU/Clang compiler is being used 2022-02-14 14:12:00 +01:00
Username404 1b9b281dec
Heavily modify Target.hpp, add a pointerAs function, and add an overload to Yerbacon::exit 2022-02-14 14:11:20 +01:00
Username404 4771aed6b4
Pass "-s" to the strip executable in the Jenkinsfile 2021-10-20 21:44:54 +02:00
Username404 30ef4500f2
Add a UPPERCASE_BUILD_TYPE variable to make a condition case-insensitive 2021-10-20 21:19:01 +02:00
Username404 24dca593c5
Remove "-s" from the optimization flags 2021-10-20 20:50:36 +02:00
Username404 36b0e39a92
Only define YBCON_FLAGS in optimized builds 2021-10-20 19:16:45 +02:00
Username404-59 62204d480e
Support "--newlines=on/off" and "--buildInfo" in the shell scripts 2021-10-20 17:26:39 +02:00
Username404-59 2cf523bf17
Replace "--newlinesoff" with an assignable argument ("--newlines=on/off") 2021-10-20 17:11:14 +02:00
Username404-59 88d22e6183
Add a "--buildInfo" argument to print the compiler and optimization options used when building 2021-10-20 17:08:41 +02:00
Username404-59 0ce02ea77f
Remove a useless semicolon in ParseComponents.hpp 2021-10-20 13:21:35 +02:00
Username404-59 d9b399881d
Use the derived_from concept in the template of the IS(X) macro 2021-10-20 13:16:54 +02:00
Username404-59 ec2af24be3
Add a [] operator to the ParseTree class 2021-10-20 13:16:40 +02:00
Username404 e8adf32645
Set CPACK_NSIS_IGNORE_LICENSE_PAGE to TRUE in the CMakeLists.txt file 2021-10-19 22:08:41 +02:00
Username404-59 7b8b8addd6
Remove the isNPOS boolean and assign lastSlash to position1 when it isn't equal to string_view::npos 2021-10-15 13:02:46 +02:00
Username404-59 cd8b14e00b
Add a missing semicolon in the definition of isNPOS in main.cpp 2021-10-14 23:28:58 +02:00
Username404-59 0b20c24eba
Make position1 and position2 constant variables in main.cpp 2021-10-14 23:25:55 +02:00
Username404-59 b351280b5b
Always verify that position1 is not equal to string_view::npos in main.cpp 2021-10-14 23:16:17 +02:00
Username404-59 cf6e5cfaf8
Don't ignore '\' characters when '/' isn't present in file names 2021-10-14 22:52:44 +02:00
Username404 6bb6fa4dda
Add "-fvect-cost-model=unlimited" to the GNU optimization flags in the CMakeLists.txt file 2021-10-11 19:03:38 +02:00
Username404-59 1b91a2a761
Do not output compilation results that are made of whitespace characters 2021-10-08 17:46:14 +02:00
Username404-59 2458c7bb6c
Return EXIT_FAILURE if one of the compilation units failed 2021-10-08 17:37:24 +02:00
Username404-59 a2b67298a4
Use filesystem::path::preferred_separator at compile time to remove a few preprocessor directives in main.cpp 2021-10-08 16:32:41 +02:00
Username404-59 429ed02483
Don't output useless new lines in main.cpp 2021-10-08 13:29:46 +02:00
Username404 dc21af192b
Make Yerbacon::exit a static function 2021-10-07 22:01:23 +02:00
Username404 8ab826bf68
Move a condition from Target.hpp to main.cpp and add a new Yerbacon::exit function 2021-10-07 21:39:48 +02:00
Username404 7b1987f81b
Throw an exception when instead of calling exit when the "--newlinesoff" argument is used with incompatible targets 2021-10-07 21:11:45 +02:00
Username404-59 aac3085e94
Make currentCharType a constant variable in lexer.cpp 2021-10-06 14:37:13 +02:00
Username404 233ab8d0e8
Add a comment listing a few required plugins in the Jenkinsfile 2021-10-05 22:16:17 +02:00
Username404 435bc45bd6
Clean the workspace after building in the Jenkinsfile 2021-10-05 22:13:16 +02:00
Username404 a64805bd35
Use the constant iterators from the files set in main.cpp 2021-10-05 20:11:07 +02:00
Username404-59 20eff1d7b5
Set the initial size of Units to the number of files instead of allocating memory and using a back_inserter 2021-10-05 09:28:43 +02:00
Username404-59 e04fc67aae
Reserve memory for the Units vector 2021-10-05 09:15:46 +02:00
Username404-59 70f93b9200
Use std::transform on the files set to output the results to the Units vector 2021-10-05 09:13:31 +02:00
Username404-59 24d934caf2
Use any_of instead of a range-based loop in the Argument::is function 2021-10-05 08:45:38 +02:00
Username404-59 58f2d9cba7
Remove an extra space in arguments.hpp 2021-10-05 08:43:34 +02:00
Username404-59 1e7da048d4
Call std::for_each in main.cpp instead of using range-based loops, to allow the use of the parallel mode 2021-10-05 08:38:25 +02:00