better fix warning with "-Wclass-memaccess" in SPI
This commit is contained in:
parent
a7a8b02854
commit
51bd7a7967
1 changed files with 3 additions and 11 deletions
|
|
@ -333,24 +333,16 @@ void SPIClass::dmaAllocate(void) {
|
|||
use_dma = true; // Everything allocated successfully
|
||||
extraWriteDescriptors = &extraReadDescriptors[numReadDescriptors];
|
||||
|
||||
// dmac.h didn't include extern "C" which cause
|
||||
// DmacDescriptor and its members are defined as C++ struct therefore
|
||||
// memcpy will throw warning on copying where simple assignment won't work
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wclass-memaccess"
|
||||
|
||||
// Initialize descriptors (copy from first ones)
|
||||
// cast to void* to suppress warning: with no trivial copy-assignment [-Wclass-memaccess]
|
||||
for(int i=0; i<numReadDescriptors; i++) {
|
||||
memcpy(&extraReadDescriptors[i], firstReadDescriptor,
|
||||
memcpy((void*) &extraReadDescriptors[i], firstReadDescriptor,
|
||||
sizeof(DmacDescriptor));
|
||||
}
|
||||
for(int i=0; i<numWriteDescriptors; i++) {
|
||||
memcpy(&extraWriteDescriptors[i], firstWriteDescriptor,
|
||||
memcpy((void*) &extraWriteDescriptors[i], firstWriteDescriptor,
|
||||
sizeof(DmacDescriptor));
|
||||
}
|
||||
|
||||
#pragma GCC diagnostic pop
|
||||
|
||||
} // end malloc
|
||||
} // end extra descriptor check
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue