Bug 1031324

Summary: libdbus-c++ fails to build with GCC 7
Product: [openSUSE] openSUSE Tumbleweed Reporter: Martin Liška <martin.liska>
Component: DevelopmentAssignee: Dave Plater <davejplater>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Bug Depends on:    
Bug Blocks: 1030236    

Description Martin Liška 2017-03-28 12:07:06 UTC
[   44s] pipe.cpp: In member function 'void DBus::Pipe::signal()':
[   44s] pipe.cpp:86:29: error: invalid conversion from 'char' to 'const void*' [-fpermissive]
[   44s]    ::write(_fd_write, '\0', 1);
[   44s]                              ^
[   44s] In file included from pipe.cpp:34:0:
[   44s] /usr/include/unistd.h:369:16: note:   initializing argument 2 of 'ssize_t write(int, const void*, size_t)'
[   44s]  extern ssize_t write (int __fd, const void *__buf, size_t __n) __wur;
[   44s]                 ^~~~~
[   45s] pipe.cpp: In member function 'void DBus::Pipe::write(const void*, unsigned int)':
[   45s] pipe.cpp:67:10: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)', declared with attribute warn_unused_result [-Wunused-result]
[   45s]    ::write(_fd_write, static_cast <const void *>(&nbytes), sizeof(nbytes));
[   45s]    ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[   45s] pipe.cpp:70:10: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)', declared with attribute warn_unused_result [-Wunused-result]
[   45s]    ::write(_fd_write, buffer, nbytes);
[   45s]    ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
[   45s] pipe.cpp: In member function 'ssize_t DBus::Pipe::read(void*, unsigned int&)':
[   45s] pipe.cpp:77:9: warning: ignoring return value of 'ssize_t read(int, void*, size_t)', declared with attribute warn_unused_result [-Wunused-result]
[   45s]    ::read(_fd_read, &nbytes, sizeof(nbytes));
[   45s]    ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[   45s] pipe.cpp: In member function 'void DBus::Pipe::signal()':
[   45s] pipe.cpp:86:10: warning: ignoring return value of 'ssize_t write(int, const void*, size_t)', declared with attribute warn_unused_result [-Wunused-result]
[   45s]    ::write(_fd_write, '\0', 1);
[   45s]    ~~~~~~~^~~~~~~~~~~~~~~~~~~~

Can be tested in openSUSE:Factory:Staging:Gcc7 project.
Comment 1 Dave Plater 2017-04-10 05:00:45 UTC
Fixed see sr#483144