Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Duet3D/RepRapFirmware.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Crocker <dcrocker@eschertech.com>2021-11-04 02:50:09 +0300
committerDavid Crocker <dcrocker@eschertech.com>2021-11-04 02:50:09 +0300
commit2ec23cf3b7c3f0ba4422bbd07b5589fddfcfd934 (patch)
tree8a1ec994712070644c4933effc300ff5f0c3501f
parent31f4955afb95dbe35eda20c590eb3bf8d251866d (diff)
Static analysis fixes
-rw-r--r--src/Comms/PanelDueUpdater.h4
-rw-r--r--src/Fans/Fan.h2
-rw-r--r--src/GCodes/GCodeBuffer/ExpressionParser.cpp4
-rw-r--r--src/Hardware/SoftwareReset.cpp2
-rw-r--r--src/Hardware/SoftwareReset.h2
-rw-r--r--src/ObjectModel/GlobalVariables.h2
-rw-r--r--src/ObjectModel/ObjectModel.cpp24
-rw-r--r--src/ObjectModel/ObjectModel.h6
-rw-r--r--src/Platform/Platform.cpp2
-rw-r--r--src/RepRapFirmware.cpp4
-rw-r--r--src/RepRapFirmware.pdpbin8713 -> 8828 bytes
-rw-r--r--src/bossa/Flasher.h2
12 files changed, 27 insertions, 27 deletions
diff --git a/src/Comms/PanelDueUpdater.h b/src/Comms/PanelDueUpdater.h
index cf0634c6..81627b8a 100644
--- a/src/Comms/PanelDueUpdater.h
+++ b/src/Comms/PanelDueUpdater.h
@@ -54,9 +54,9 @@ private:
uint8_t serialChannel;
size_t currentBaudRate;
Samba* samba;
- SerialPort* serialPort;
+ SerialPort *_ecv_from serialPort;
Device* device;
- FlasherObserver* flasherObserver;
+ FlasherObserver *_ecv_from flasherObserver;
Flasher* flasher;
AsyncSerial::InterruptCallbackFn currentInterruptCallbackFn;
uint32_t offset;
diff --git a/src/Fans/Fan.h b/src/Fans/Fan.h
index 74da625f..a6e089d9 100644
--- a/src/Fans/Fan.h
+++ b/src/Fans/Fan.h
@@ -24,7 +24,7 @@ public:
explicit Fan(unsigned int fanNum) noexcept;
Fan(const Fan&) = delete;
- virtual ~Fan() noexcept { }
+ virtual ~Fan() noexcept override { }
virtual bool Check(bool checkSensors) noexcept = 0; // update the fan PWM returning true if it is a thermostatic fan that is on
virtual GCodeResult SetPwmFrequency(PwmFrequency freq, const StringRef& reply) noexcept = 0;
virtual bool IsEnabled() const noexcept = 0;
diff --git a/src/GCodes/GCodeBuffer/ExpressionParser.cpp b/src/GCodes/GCodeBuffer/ExpressionParser.cpp
index b091227d..80bcd89c 100644
--- a/src/GCodes/GCodeBuffer/ExpressionParser.cpp
+++ b/src/GCodes/GCodeBuffer/ExpressionParser.cpp
@@ -1432,8 +1432,8 @@ void ExpressionParser::ThrowParseException(const char *str, uint32_t param) cons
// Call this before making a recursive call, or before calling a function that needs a lot of stack from a recursive function
void ExpressionParser::CheckStack(uint32_t calledFunctionStackUsage) const THROWS(GCodeException)
{
- register const char * stackPtr asm ("sp"); // get the current stack pointer
- const char *stackLimit = (const char*)TaskBase::GetCurrentTaskStackBase(); // get the base (lowest available address) of the stack for this task
+ const char *_ecv_array stackPtr = (const char *_ecv_array)GetStackPointer();
+ const char *_ecv_array stackLimit = (const char *_ecv_array)TaskBase::GetCurrentTaskStackBase(); // get the base (lowest available address) of the stack for this task
//debugPrintf("Margin: %u\n", stackPtr - stackLimit);
if (stackLimit + calledFunctionStackUsage + (StackUsage::Throw + StackUsage::Margin) <= stackPtr)
diff --git a/src/Hardware/SoftwareReset.cpp b/src/Hardware/SoftwareReset.cpp
index 48831178..d828b9cd 100644
--- a/src/Hardware/SoftwareReset.cpp
+++ b/src/Hardware/SoftwareReset.cpp
@@ -102,7 +102,7 @@ void SoftwareResetData::Populate(uint16_t reason, const uint32_t *stk) noexcept
}
}
-void SoftwareResetData::Print(MessageType mtype, unsigned int slot) const noexcept
+void SoftwareResetData::Printit(MessageType mtype, unsigned int slot) const noexcept
{
String<StringLength256> scratchString; // long enough to print 28 stack entries @ 9 bytes each, but not 29
scratchString.copy("Last software reset ");
diff --git a/src/Hardware/SoftwareReset.h b/src/Hardware/SoftwareReset.h
index e0119f41..3e080611 100644
--- a/src/Hardware/SoftwareReset.h
+++ b/src/Hardware/SoftwareReset.h
@@ -72,7 +72,7 @@ struct SoftwareResetData
bool IsValid() const noexcept { return magic == magicValue; }
void Clear() noexcept;
void Populate(uint16_t reason, const uint32_t *stk) noexcept;
- void Print(MessageType mtype, unsigned int slot) const noexcept;
+ void Printit(MessageType mtype, unsigned int slot) const noexcept;
static constexpr uint16_t versionValue = 9; // increment this whenever this struct changes
static constexpr uint16_t magicValue = 0x7D00 | versionValue; // value we use to recognise that all the flash data has been written
diff --git a/src/ObjectModel/GlobalVariables.h b/src/ObjectModel/GlobalVariables.h
index 04ab34a3..b58df922 100644
--- a/src/ObjectModel/GlobalVariables.h
+++ b/src/ObjectModel/GlobalVariables.h
@@ -27,7 +27,7 @@ protected:
// Construct a JSON representation of those parts of the object model requested by the user
// This overrides the standard definition because the variable names are not fixed
- void ReportAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor * null classDescriptor, uint8_t tableNumber, const char *filter) const noexcept override
+ void ReportAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor * null classDescriptor, uint8_t tableNumber, const char *_ecv_array filter) const noexcept override
THROWS(GCodeException);
private:
diff --git a/src/ObjectModel/ObjectModel.cpp b/src/ObjectModel/ObjectModel.cpp
index cb4a247f..5e7010f8 100644
--- a/src/ObjectModel/ObjectModel.cpp
+++ b/src/ObjectModel/ObjectModel.cpp
@@ -194,7 +194,7 @@ void ExpressionValue::Release() noexcept
}
// Get the format string to use assuming this is a floating point number
-const char *ExpressionValue::GetFloatFormatString() const noexcept
+const char *_ecv_array ExpressionValue::GetFloatFormatString() const noexcept
{
float f = 1.0;
unsigned int digitsAfterPoint = param;
@@ -403,8 +403,8 @@ GCodeException ObjectExplorationContext::ConstructParseException(const char *msg
// Call this before making a recursive call, or before calling a function that needs a lot of stack from a recursive function
void ObjectExplorationContext::CheckStack(uint32_t calledFunctionStackUsage) const THROWS(GCodeException)
{
- register const char * stackPtr asm ("sp");
- const char *stackLimit = (const char*)TaskBase::GetCallerTaskHandle() + sizeof(TaskBase);
+ const char *_ecv_array stackPtr = (const char*_ecv_array)GetStackPointer();
+ const char *_ecv_array stackLimit = (const char*_ecv_array)TaskBase::GetCallerTaskHandle() + sizeof(TaskBase);
if (stackLimit + calledFunctionStackUsage + (StackUsage::Throw + StackUsage::Margin) < stackPtr)
{
return;
@@ -422,7 +422,7 @@ void ObjectExplorationContext::CheckStack(uint32_t calledFunctionStackUsage) con
// Report this object
void ObjectModel::ReportAsJson(OutputBuffer* buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor * null classDescriptor,
- uint8_t tableNumber, const char* filter) const THROWS(GCodeException)
+ uint8_t tableNumber, const char *_ecv_array filter) const THROWS(GCodeException)
{
if (context.IncreaseDepth())
{
@@ -484,7 +484,7 @@ void ObjectModel::ReportAsJson(OutputBuffer* buf, ObjectExplorationContext& cont
}
// Construct a JSON representation of those parts of the object model requested by the user. This version is called on the root of the tree.
-void ObjectModel::ReportAsJson(OutputBuffer *buf, const char *filter, const char *reportFlags, bool wantArrayLength) const THROWS(GCodeException)
+void ObjectModel::ReportAsJson(OutputBuffer *buf, const char *_ecv_array filter, const char *_ecv_array reportFlags, bool wantArrayLength) const THROWS(GCodeException)
{
const unsigned int defaultMaxDepth = (wantArrayLength) ? 99 : (filter[0] == 0) ? 1 : 99;
ObjectExplorationContext context(wantArrayLength, reportFlags, defaultMaxDepth, buf->Length());
@@ -500,7 +500,7 @@ void ObjectModel::ReportAsJson(OutputBuffer *buf, const char *filter, const char
// Most recursive calls are for non-array object values, so handle object values inline to reduce stack usage.
// This saves about 240 bytes of stack space but costs 272 bytes of flash memory.
inline void ObjectModel::ReportItemAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor,
- const ExpressionValue& val, const char *filter) const THROWS(GCodeException)
+ const ExpressionValue& val, const char *_ecv_array filter) const THROWS(GCodeException)
{
if (context.WantArrayLength() && *filter == 0)
{
@@ -562,7 +562,7 @@ void ObjectModel::ReportArrayLengthAsJson(OutputBuffer *buf, ObjectExplorationCo
// Function to report a value or object as JSON
// This function is recursive, so keep its stack usage low
-void ObjectModel::ReportItemAsJsonFull(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor,
+void ObjectModel::ReportItemAsJsonFull(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *null classDescriptor,
const ExpressionValue& val, const char *filter) const THROWS(GCodeException)
{
switch (val.GetType())
@@ -801,8 +801,8 @@ void ObjectModel::ReportPinNameAsJson(OutputBuffer *buf, const ExpressionValue&
}
// Report an entire array as JSON
-void ObjectModel::ReportArrayAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor,
- const ObjectModelArrayDescriptor *omad, const char *filter) const THROWS(GCodeException)
+void ObjectModel::ReportArrayAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *null classDescriptor,
+ const ObjectModelArrayDescriptor *omad, const char *_ecv_array filter) const THROWS(GCodeException)
{
const bool isRootArray = (buf->Length() == context.GetInitialBufferOffset()); // it's a root array if we haven't started writing to the buffer yet
ReadLocker lock(omad->lockPointer);
@@ -836,7 +836,7 @@ void ObjectModel::ReportArrayAsJson(OutputBuffer *buf, ObjectExplorationContext&
}
// Find the requested entry
-const ObjectModelTableEntry* ObjectModel::FindObjectModelTableEntry(const ObjectModelClassDescriptor *classDescriptor, uint8_t tableNumber, const char* idString) const noexcept
+const ObjectModelTableEntry* ObjectModel::FindObjectModelTableEntry(const ObjectModelClassDescriptor *classDescriptor, uint8_t tableNumber, const char *_ecv_array idString) const noexcept
{
const uint8_t * const descriptor = classDescriptor->omd;
if (tableNumber >= descriptor[0])
@@ -929,7 +929,7 @@ int ObjectModelTableEntry::IdCompare(const char *id) const noexcept
}
// Get the value of an object
-ExpressionValue ObjectModel::GetObjectValueUsingTableNumber(ObjectExplorationContext& context, const ObjectModelClassDescriptor * null classDescriptor, const char *idString, uint8_t tableNumber) const THROWS(GCodeException)
+ExpressionValue ObjectModel::GetObjectValueUsingTableNumber(ObjectExplorationContext& context, const ObjectModelClassDescriptor * null classDescriptor, const char *_ecv_array idString, uint8_t tableNumber) const THROWS(GCodeException)
decrease(strlen(idString)) // recursion variant
{
if (classDescriptor == nullptr)
@@ -966,7 +966,7 @@ decrease(strlen(idString)) // recursion variant
throw context.ConstructParseException("unknown value '%s'", idString);
}
-ExpressionValue ObjectModel::GetObjectValue(ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor, const ExpressionValue& val, const char *idString) const THROWS(GCodeException)
+ExpressionValue ObjectModel::GetObjectValue(ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor, const ExpressionValue& val, const char *_ecv_array idString) const THROWS(GCodeException)
decrease(strlen(idString)) // recursion variant
{
if (*idString == 0 && context.WantExists() && val.GetType() != TypeCode::None)
diff --git a/src/ObjectModel/ObjectModel.h b/src/ObjectModel/ObjectModel.h
index 744e9a50..abbf1f5d 100644
--- a/src/ObjectModel/ObjectModel.h
+++ b/src/ObjectModel/ObjectModel.h
@@ -300,7 +300,7 @@ public:
virtual ~ObjectModel() { }
// Construct a JSON representation of those parts of the object model requested by the user. This version is called only on the root of the tree.
- void ReportAsJson(OutputBuffer *buf, const char *filter, const char *reportFlags, bool wantArrayLength) const THROWS(GCodeException);
+ void ReportAsJson(OutputBuffer *buf, const char *_ecv_array filter, const char *_ecv_array reportFlags, bool wantArrayLength) const THROWS(GCodeException);
// Get the value of an object via the table
ExpressionValue GetObjectValueUsingTableNumber(ObjectExplorationContext& context, const ObjectModelClassDescriptor * null classDescriptor, const char *_ecv_array idString, uint8_t tableNumber) const THROWS(GCodeException);
@@ -318,7 +318,7 @@ protected:
virtual void ReportAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor * null classDescriptor, uint8_t tableNumber, const char *_ecv_array filter) const THROWS(GCodeException);
// Report an entire array as JSON
- void ReportArrayAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor, const ObjectModelArrayDescriptor *omad, const char *_ecv_array filter) const THROWS(GCodeException);
+ void ReportArrayAsJson(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *null classDescriptor, const ObjectModelArrayDescriptor *omad, const char *_ecv_array filter) const THROWS(GCodeException);
// Get the value of an object that we hold
ExpressionValue GetObjectValue(ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor, const ExpressionValue& val, const char *_ecv_array idString) const THROWS(GCodeException);
@@ -328,7 +328,7 @@ protected:
virtual const ObjectModelClassDescriptor *GetObjectModelClassDescriptor() const noexcept = 0;
- __attribute__ ((noinline)) void ReportItemAsJsonFull(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *classDescriptor,
+ __attribute__ ((noinline)) void ReportItemAsJsonFull(OutputBuffer *buf, ObjectExplorationContext& context, const ObjectModelClassDescriptor *null classDescriptor,
const ExpressionValue& val, const char *filter) const THROWS(GCodeException);
private:
// These functions have been separated from ReportItemAsJson to avoid high stack usage in the recursive functions, therefore they must not be inlined
diff --git a/src/Platform/Platform.cpp b/src/Platform/Platform.cpp
index 378b8280..69eb67f5 100644
--- a/src/Platform/Platform.cpp
+++ b/src/Platform/Platform.cpp
@@ -1726,7 +1726,7 @@ void Platform::Diagnostics(MessageType mtype) noexcept
}
else
{
- srd->Print(mtype, slot);
+ srd->Printit(mtype, slot);
}
}
diff --git a/src/RepRapFirmware.cpp b/src/RepRapFirmware.cpp
index 7425fa9a..57379926 100644
--- a/src/RepRapFirmware.cpp
+++ b/src/RepRapFirmware.cpp
@@ -240,7 +240,7 @@ bool MillisTimer::CheckAndStop(uint32_t timeoutMillis) noexcept
// Utilities and storage not part of any class
// For debug use
-void debugPrintf(const char* fmt, ...) noexcept
+void debugPrintf(const char *_ecv_array fmt, ...) noexcept
{
// Calls to debugPrintf() from with ISRs are unsafe, both because of timing issues and because the call to Platform::MessageF tries to acquire a mutex.
// So ignore the call if we are coming from within an ISR.
@@ -262,7 +262,7 @@ double HideNan(float val) noexcept
// Append a list of driver numbers to a string, with a space before each one
void ListDrivers(const StringRef& str, DriversBitmap drivers) noexcept
{
- drivers.Iterate([&str](unsigned int d, unsigned int) noexcept { str.catf(" %u", d); });
+ drivers.Iterate([&str](unsigned int d, unsigned int) noexcept -> void { str.catf(" %u", d); });
}
// End
diff --git a/src/RepRapFirmware.pdp b/src/RepRapFirmware.pdp
index 411fe08b..10b9a2d4 100644
--- a/src/RepRapFirmware.pdp
+++ b/src/RepRapFirmware.pdp
Binary files differ
diff --git a/src/bossa/Flasher.h b/src/bossa/Flasher.h
index a6ab16e8..8a7955aa 100644
--- a/src/bossa/Flasher.h
+++ b/src/bossa/Flasher.h
@@ -64,7 +64,7 @@ public:
private:
Samba& _samba;
- BossaFlash* _flash;
+ BossaFlash *_ecv_from _flash;
FlasherObserver& _observer;
uint32_t pageNum;