From b0db5d4d7a236975c27f58306f6d894d8ed6125f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marvin=20Ha=CC=88user?= <mhaeuser@posteo.de> Date: Sat, 25 Nov 2023 16:33:17 +0100 Subject: [PATCH] simulator: fix pedantic C++ 98 warnings C++ 98 requires all source files to terminate with a new-line character. It also does not allow for semicolons outside of declarations that require it (and in function scopes). Fix them to allow for pedantic warnings to be enabled when beneficial. Finally, it does not allow for object-to-function casts. The first two warnings are resolved trivially. For the third, the solution to cast through a pointer address is technically unsafe, as systems are not required to support object pointers (e.g. void *) being able to represent function pointers. However, the existence of dlsym() virtually implies this is supported on the target system (technically, all symbols could be data symbols, but that is nitpicking). --- simulators/c++2/src_simulator/TEPE/PropRelConstraint.cpp | 2 +- simulators/c++2/src_simulator/app/TMLActionCommand.cpp | 2 +- simulators/c++2/src_simulator/definitions.h | 2 +- simulators/c++2/src_simulator/evt/ListenersSimCmd.cpp | 2 +- simulators/c++2/src_simulator/sim/ServerHelp.cpp | 2 +- simulators/c++2/src_simulator/sim/ServerHelp.h | 2 +- src/main/java/tmltranslator/tomappingsystemc2/Penalties.java | 4 ++-- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/simulators/c++2/src_simulator/TEPE/PropRelConstraint.cpp b/simulators/c++2/src_simulator/TEPE/PropRelConstraint.cpp index 062011494f..8c535b6986 100644 --- a/simulators/c++2/src_simulator/TEPE/PropRelConstraint.cpp +++ b/simulators/c++2/src_simulator/TEPE/PropRelConstraint.cpp @@ -77,4 +77,4 @@ void PropRelConstraint::notifyEnable(unsigned int iSigState){ //} void PropRelConstraint::reset(){ -} \ No newline at end of file +} diff --git a/simulators/c++2/src_simulator/app/TMLActionCommand.cpp b/simulators/c++2/src_simulator/app/TMLActionCommand.cpp index e1742d0cf4..169fd8371e 100644 --- a/simulators/c++2/src_simulator/app/TMLActionCommand.cpp +++ b/simulators/c++2/src_simulator/app/TMLActionCommand.cpp @@ -81,4 +81,4 @@ std::string TMLActionCommand::toString(TMLLength aLength, TMLLength aProgress) c std::ostringstream outp; outp << "Action in " << TMLCommand::toString(aLength, aProgress); return outp.str(); -} \ No newline at end of file +} diff --git a/simulators/c++2/src_simulator/definitions.h b/simulators/c++2/src_simulator/definitions.h index a70db8932a..2cf89988ce 100644 --- a/simulators/c++2/src_simulator/definitions.h +++ b/simulators/c++2/src_simulator/definitions.h @@ -844,7 +844,7 @@ namespace std{ return p1->_time > p2->_time; } }; -}; +} ///Priority queue for SignalChangeData objects, keeps track of the temporal ordering of signal changes (for VCD output) typedef std::priority_queue<SignalChangeData*, std::vector<SignalChangeData*>, std::greater<SignalChangeData*> > SignalChangeQueue; diff --git a/simulators/c++2/src_simulator/evt/ListenersSimCmd.cpp b/simulators/c++2/src_simulator/evt/ListenersSimCmd.cpp index 918ea3ae24..a469357ea4 100644 --- a/simulators/c++2/src_simulator/evt/ListenersSimCmd.cpp +++ b/simulators/c++2/src_simulator/evt/ListenersSimCmd.cpp @@ -159,7 +159,7 @@ CondBreakpoint::CondBreakpoint(SimComponents* iSimComp, std::string iCond, TMLTa std::cout << "Error " << dlerror() << " occurred when opening shared library.\n"; return; } - _condFunc = (BreakCondFunc) dlsym( _dlHandle, "condFunc"); + _condFunc = (BreakCondFunc)(intptr_t) dlsym( _dlHandle, "condFunc"); if (dlerror() != NULL) { std::cout << "Error when getting function handle\n"; return; diff --git a/simulators/c++2/src_simulator/sim/ServerHelp.cpp b/simulators/c++2/src_simulator/sim/ServerHelp.cpp index 62edc88c32..c71ea9537a 100644 --- a/simulators/c++2/src_simulator/sim/ServerHelp.cpp +++ b/simulators/c++2/src_simulator/sim/ServerHelp.cpp @@ -198,4 +198,4 @@ std::vector<std::string> ServerHelp::splitData (std::string s, std::string delim token = trim(token.substr(pos + 2)); res.push_back(token); return res; -} \ No newline at end of file +} diff --git a/simulators/c++2/src_simulator/sim/ServerHelp.h b/simulators/c++2/src_simulator/sim/ServerHelp.h index 42bc3e450b..297d875190 100644 --- a/simulators/c++2/src_simulator/sim/ServerHelp.h +++ b/simulators/c++2/src_simulator/sim/ServerHelp.h @@ -86,4 +86,4 @@ public: std::map <std::string, std::string> aliasMapWithName; std::string helpServerContent; -}; \ No newline at end of file +}; diff --git a/src/main/java/tmltranslator/tomappingsystemc2/Penalties.java b/src/main/java/tmltranslator/tomappingsystemc2/Penalties.java index c9f8ad5da9..4ebac721f0 100644 --- a/src/main/java/tmltranslator/tomappingsystemc2/Penalties.java +++ b/src/main/java/tmltranslator/tomappingsystemc2/Penalties.java @@ -106,9 +106,9 @@ public class Penalties { data = FILE_HEADER + "\n"; if (mustHandlePenalties) { - data += ACTIVATED; + data += ACTIVATED + "\n"; } else { - data += NOT_ACTIVATED; + data += NOT_ACTIVATED + "\n"; } try { -- GitLab