Audacity Bug Summary
••• Introduction •••
••• Keywords •••
    Audacity 3.0.3 development began 19th April 2021

Audacity Bugzilla



Bug 1818 - Linux: building with autotools fails when running "make"
Linux: building with autotools fails when running "make"
Status: RESOLVED FIXED
Product: Audacity
Classification: Unclassified
Component: Application Core
unspecified
Per OS Linux
: P4 RepeatableAll
Assigned To: Default Assignee for New Bugs
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2018-01-02 01:52 UTC by Jeremy Henty
Modified: 2018-08-20 11:45 UTC (History)
2 users (show)

See Also:
Steps To Reproduce:
Run the commands: $ ./configure --prefix=<my_prefix> --enable-debug WX_CONFIG=<my_wx_config> CXXFLAGS="-std=gnu++11" $ make gcc fails
Release Note:
First Git SHA:
Group: ---
Workaround:
Closed: 2018-08-20 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jeremy Henty 2018-01-02 01:52:02 UTC
The breakage is due to commits
  * cf4b9eb5c82dca2a329cc1c170818c843f54793f
    "Define wxDirDialogWrapper, with localized default prompt and name"
  * 384300016d3ddae7f6b4f550efa6a6d582df7ea4
    "Define FileDialogWrapper, with localized default prompt and name"

These commits add classes to src/widgets/wxPanelWrapper.h with 
"void Create()" methods whose implementation tries to return a
value.  gcc 4.9.2 refuses to allow methods with void return type
to call "return" with a value.  Therefore "make" fails.

The error messages are:
  blockfile/../ondemand/../widgets/wxPanelWrapper.h:136:7: error: return-statement with a value, in function returning 'void' [-fpermissive]
  blockfile/../ondemand/../widgets/wxPanelWrapper.h:177:7: error: return-statement with a value, in function returning 'void' [-fpermissive]
Comment 1 Jeremy Henty 2018-01-02 02:28:04 UTC
The build can be fixed either by changing the new method's return type from "void" to "bool", or by removing the "return" keyword from their body, so that they still call the parent method but do not return its value.

I am not familiar enough with wxWidgets and Audacity to decide which is the correct fix.  (But I can't help noticing that other "Create()" methods in wxWidgets all have return type "bool" AFAICT.)