Opened 12 years ago

Closed 2 years ago

#34517 closed defect (fixed)

stardict: variable length array of non-POD element type

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: alexandernx@…
Priority: Normal Milestone:
Component: ports Version: 2.1.1
Keywords: clang Cc: pengyu.ut@…
Port: stardict

Description

stardict 3.0.2 fails to build on the Lion buildbot with the error:

t_lookupdata.cpp:20:30: error: variable length array of non-POD element type 'std::vector<gchar *>'
        std::vector<gchar *> reslist[dictmask.size()];
                                    ^
1 error generated.
make[2]: *** [t_lookupdata.o] Error 1

Maybe updating to 3.0.3 will help, maybe not.

Change History (8)

comment:1 in reply to:  description Changed 12 years ago by haianjxw@…

Replying to ryandesign@…:

stardict 3.0.2 fails to build on the Lion buildbot with the error:

t_lookupdata.cpp:20:30: error: variable length array of non-POD element type 'std::vector<gchar *>'
        std::vector<gchar *> reslist[dictmask.size()];
                                    ^
1 error generated.
make[2]: *** [t_lookupdata.o] Error 1

Maybe updating to 3.0.3 will help, maybe not.

It works with:

sudo port install stardict configure.compiler=llvm-gcc-4.2
Last edited 11 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:2 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: pengyu.ut@… added

Has duplicate #40563.

comment:3 in reply to:  description ; Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: clang added; lion removed
Resolution: fixed
Status: newclosed

3.0.4 still has the problem so I filed an upstream bug report and blacklisted clang in r111503.

comment:4 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

In 818b513f1c61d2fa808b1ce5b02d7f77a241871c/macports-ports (master):

stardict: Update to 3.0.6

Fix build failure by requiring C++11 due to libsigcxx2.

Fix gnome variant.

Remove unneeded patches and add new patches.

Allow Clang to be used.

See: #34517

Project moves away from Google Code to SourceForge.

See: #53467

comment:5 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: closedreopened

The original problem is still happening on older OS versions:

https://build.macports.org/builders/ports-10.10_x86_64-builder/builds/102191/steps/install-port/logs/stdio

But I didn't see the problem when building on High Sierra. Maybe this is a feature introduced in newer versions of clang, and we need to blacklist older ones.

comment:6 Changed 4 years ago by jmroot (Joshua Root)

Cf. #59537

comment:7 in reply to:  3 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to ryandesign:

3.0.4 still has the problem so I filed an upstream bug report

https://code.google.com/archive/p/stardict-3/issues/58

which was auto imported to:

https://github.com/huzheng001/stardict-3/issues/58

Upstream says they fixed it in 2013, but their fix appears to have been ineffective. I've added a note to the GitHub issue.

comment:8 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: reopenedclosed

In cc44f968ae64d2ee96c68acca02ebd4bc4c79572/macports-ports (master):

stardict: Blacklist clang < 900

Closes: #34517

Note: See TracTickets for help on using tickets.