Skip to content

FastLED compiler warnings on gcc/linux #985

Open
@marcmerlin

Description

@marcmerlin

I'm not sure if they are worth fixing/easy to fix. Full list attached:
out.txt

libraries/FastLED/colorutils.h: In copy constructor ‘CHSVPalette16::CHSVPalette16(const CHSVPalette16&)’:
libraries/FastLED/colorutils.h:455:69: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct CHSV’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
         memmove8( &(entries[0]), &(rhs.entries[0]), sizeof( entries));
                                                                     ^
In file included from libraries/FastLED/controller.h:9,
                 from libraries/FastLED/FastLED.h:47,
                 from examples/GFX_Table_Mark_Estes/neomatrix_config.h:112,
                 from examples/GFX_Table_Mark_Estes/Table_Mark_Estes.ino:5,
                 from src/main.cpp:13:
libraries/FastLED/pixeltypes.h:23:8: note: ‘struct CHSV’ declared here
 struct CHSV {
        ^~~~
In file included from libraries/FastLED/FastLED.h:58,
                 from examples/GFX_Table_Mark_Estes/neomatrix_config.h:112,
                 from examples/GFX_Table_Mark_Estes/Table_Mark_Estes.ino:5,
                 from src/main.cpp:13:
libraries/FastLED/colorutils.h: In member function ‘CHSVPalette16& CHSVPalette16::operator=(const CHSVPalette16&)’:
libraries/FastLED/colorutils.h:459:69: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct CHSV’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
         memmove8( &(entries[0]), &(rhs.entries[0]), sizeof( entries));
                                                                     ^
In file included from libraries/FastLED/controller.h:9,
                 from libraries/FastLED/FastLED.h:47,
                 from examples/GFX_Table_Mark_Estes/neomatrix_config.h:112,
                 from examples/GFX_Table_Mark_Estes/Table_Mark_Estes.ino:5,
                 from src/main.cpp:13:
libraries/FastLED/pixeltypes.h:23:8: note: ‘struct CHSV’ declared here
 struct CHSV {
        ^~~~
In file included from libraries/FastLED/FastLED.h:58,
                 from examples/GFX_Table_Mark_Estes/neomatrix_config.h:112,
                 from examples/GFX_Table_Mark_Estes/Table_Mark_Estes.ino:5,
                 from src/main.cpp:13:
libraries/FastLED/colorutils.h: In copy constructor ‘CHSVPalette256::CHSVPalette256(const CHSVPalette256&)’:
libraries/FastLED/colorutils.h:558:69: warning: ‘void* memmove(void*, const void*, size_t)’ writing to an object of type ‘struct CHSV’ with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]
         memmove8( &(entries[0]), &(rhs.entries[0]), sizeof( entries));

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions