Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 703022 - media-gfx/openscad-2019.05 with dev-libs/boost-1.72.0 : src/parser.y:68:6: error: ‘stack’ in namespace ‘std’ does not name a template type
Summary: media-gfx/openscad-2019.05 with dev-libs/boost-1.72.0 : src/parser.y:68:6: er...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Bernd
URL: https://github.com/openscad/openscad/...
Whiteboard:
Keywords:
Depends on:
Blocks: boost-1.72
  Show dependency tree
 
Reported: 2019-12-15 17:53 UTC by Kobboi
Modified: 2019-12-20 05:45 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log.gz (build.log.gz,20.22 KB, application/gzip)
2019-12-16 08:19 UTC, Kobboi
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kobboi 2019-12-15 17:53:08 UTC
ccache x86_64-pc-linux-gnu-g++ -c -O2 -march=x86-64 -pipe -fomit-frame-pointer -g -ggdb -DSTACKSIZE=8388608 -fno-strict-aliasing -std=c++11 -std=gnu++11 -I/usr/include -I/usr/include/hidapi -I/usr/include/libxml2 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DEIGEN_DONT_ALIGN -frounding-math -D_REENTRANT -Wall -W -Wno-unused-local-typedefs -fPIC -DOPENSCAD_VERSION=2019.05 -DOPENSCAD_SHORTVERSION=2019.05 -DOPENSCAD_YEAR=2019.0 -DOPENSCAD_MONTH=05.0 -DOPENSCAD_DAY=.0 -DDEBUG -DSTACKSIZE=8388608 -DUSE_QOPENGLWIDGET -DENABLE_DBUS -DENABLE_JOYSTICK -DUSE_SCINTILLA_EDITOR -DQSCINTILLA_DLL -DENABLE_SPNAV -DENABLE_HIDAPI -DENABLE_LIBZIP -DENABLE_OPENCSG -DENABLE_CGAL -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_GUI_LIB -DQT_CONCURRENT_LIB -DQT_NETWORK_LIB -DQT_DBUS_LIB -DQT_CORE_LIB -I. -Isrc -Isrc/ext/libtess2/Include -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtPrintSupport -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtMultimedia -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtConcurrent -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtCore -Iobjects -isystem /usr/include/libdrm -isystem /usr/include/eigen3 -I/usr/lib64/qt5/mkspecs/linux-g++ -o objects/objects/parser.o objects/parser.cxx
src/parser.y:68:6: error: ‘stack’ in namespace ‘std’ does not name a template type
   68 | std::stack<LocalScope *> scope_stack;
      |      ^~~~~
src/parser.y:51:1: note: ‘std::stack’ is defined in header ‘<stack>’; did you forget to ‘#include <stack>’?
   50 | #include "boost-utils.h"
  +++ |+#include <stack>
   51 | 
src/parser.y: In function ‘int parserparse()’:
src/parser.y:176:36: error: ‘scope_stack’ was not declared in this scope
  176 |               if ($1) scope_stack.top()->addChild($1);
      |                                    ^~~~~~~~~~~
src/parser.y:183:15: error: ‘scope_stack’ was not declared in this scope
  183 |               scope_stack.top()->addModule($2, newmodule);
      |               ^~~~~~~~~~~
src/parser.y:190:17: error: ‘scope_stack’ was not declared in this scope
  190 |                 scope_stack.pop();
      |                 ^~~~~~~~~~~
src/parser.y:195:15: error: ‘scope_stack’ was not declared in this scope
  195 |               scope_stack.top()->addFunction(func);
      |               ^~~~~~~~~~~
src/parser.y:215:41: error: ‘scope_stack’ was not declared in this scope
  215 |                 for (auto &assignment : scope_stack.top()->assignments) {
      |                                         ^~~~~~~~~~~
In file included from src/exceptions.h:6,
                 from src/feature.h:9,
                 from src/module.h:5,
                 from src/FileModule.h:8,
                 from src/parser.y:39:
src/printutils.h:53:39: error: ‘str’ was not declared in this scope
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: in definition of macro ‘PRINTB’
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: suggested alternatives:
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: in definition of macro ‘PRINTB’
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
In file included from /usr/include/boost/format.hpp:53,
                 from src/printutils.h:6,
                 from src/exceptions.h:6,
                 from src/feature.h:9,
                 from src/module.h:5,
                 from src/FileModule.h:8,
                 from src/parser.y:39:
/usr/include/boost/format/free_funcs.hpp:22:38: note:   ‘boost::str’
   22 |     std::basic_string<Ch, Tr, Alloc> str(const basic_format<Ch, Tr, Alloc>& f) {
      |                                      ^~~
/usr/include/boost/format/free_funcs.hpp:22:38: note:   ‘boost::str’
In file included from src/exceptions.h:6,
                 from src/feature.h:9,
                 from src/module.h:5,
                 from src/FileModule.h:8,
                 from src/parser.y:39:
src/printutils.h:53:39: error: ‘str’ was not declared in this scope
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: in definition of macro ‘PRINTB’
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: suggested alternatives:
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: in definition of macro ‘PRINTB’
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
In file included from /usr/include/boost/format.hpp:53,
                 from src/printutils.h:6,
                 from src/exceptions.h:6,
                 from src/feature.h:9,
                 from src/module.h:5,
                 from src/FileModule.h:8,
                 from src/parser.y:39:
/usr/include/boost/format/free_funcs.hpp:22:38: note:   ‘boost::str’
   22 |     std::basic_string<Ch, Tr, Alloc> str(const basic_format<Ch, Tr, Alloc>& f) {
      |                                      ^~~
/usr/include/boost/format/free_funcs.hpp:22:38: note:   ‘boost::str’
In file included from src/exceptions.h:6,
                 from src/feature.h:9,
                 from src/module.h:5,
                 from src/FileModule.h:8,
                 from src/parser.y:39:
src/printutils.h:53:39: error: ‘str’ was not declared in this scope
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: in definition of macro ‘PRINTB’
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: suggested alternatives:
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
src/printutils.h:53:39: note: in definition of macro ‘PRINTB’
   53 | #define PRINTB(_fmt, _arg) do { PRINT(str(boost::format(_fmt) % _arg)); } while (0)
      |                                       ^~~
In file included from /usr/include/boost/format.hpp:53,
                 from src/printutils.h:6,
                 from src/exceptions.h:6,
                 from src/feature.h:9,
                 from src/module.h:5,
                 from src/FileModule.h:8,
                 from src/parser.y:39:
/usr/include/boost/format/free_funcs.hpp:22:38: note:   ‘boost::str’
   22 |     std::basic_string<Ch, Tr, Alloc> str(const basic_format<Ch, Tr, Alloc>& f) {
      |                                      ^~~
/usr/include/boost/format/free_funcs.hpp:22:38: note:   ‘boost::str’
src/parser.y:257:19: error: ‘scope_stack’ was not declared in this scope
  257 |                   scope_stack.top()->addAssignment(Assignment($1, shared_ptr<Expression>($3), LOC(@$)));
      |                   ^~~~~~~~~~~
src/parser.y:287:17: error: ‘scope_stack’ was not declared in this scope
  287 |                 scope_stack.push(&$1->scope);
      |                 ^~~~~~~~~~~
src/parser.y:291:17: error: ‘scope_stack’ was not declared in this scope
  291 |                 scope_stack.pop();
      |                 ^~~~~~~~~~~
src/parser.y:307:17: error: ‘scope_stack’ was not declared in this scope
  307 |                 scope_stack.push(&$1->else_scope);
      |                 ^~~~~~~~~~~
src/parser.y:311:17: error: ‘scope_stack’ was not declared in this scope
  311 |                 scope_stack.pop();
      |                 ^~~~~~~~~~~
src/parser.y:320:17: error: ‘scope_stack’ was not declared in this scope
  320 |                 scope_stack.push(&$<ifelse>$->scope);
      |                 ^~~~~~~~~~~
src/parser.y:324:17: error: ‘scope_stack’ was not declared in this scope
  324 |                 scope_stack.pop();
      |                 ^~~~~~~~~~~
src/parser.y:340:38: error: ‘scope_stack’ was not declared in this scope
  340 |                 if ($1) scope_stack.top()->addChild($1);
      |                                      ^~~~~~~~~~~
src/parser.y: In function ‘bool parse(FileModule*&, const string&, const string&, const string&, int)’:
src/parser.y:689:3: error: ‘scope_stack’ was not declared in this scope
  689 |   scope_stack.push(&rootmodule->scope);
      |   ^~~~~~~~~~~
make: *** [Makefile:5139: objects/objects/parser.o] Error 1
make: *** Waiting for unfinished jobs....
 * ERROR: media-gfx/openscad-2019.05-r1::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=media-gfx/openscad-2019.05-r1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-gfx/openscad-2019.05-r1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-gfx/openscad-2019.05-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-gfx/openscad-2019.05-r1/temp/environment'.
 * Working directory: '/var/tmp/portage/media-gfx/openscad-2019.05-r1/work/openscad-2019.05'
 * S: '/var/tmp/portage/media-gfx/openscad-2019.05-r1/work/openscad-2019.05'


Reproducible: Always
Comment 1 Jonas Stein gentoo-dev 2019-12-15 19:56:15 UTC
Thank you for the report. Please recompile and 
*attach* the logfiles and 
paste the emerge info as described on
https://wiki.gentoo.org/wiki/Attach_the_logs_to_the_bug_ticket
We need to have all information at hand before ticket assignment, so that the maintainer can look after it in one session with minimal number of callbacks.
Please reopen this ticket (Status:unconfirmed) afterwards.
Comment 2 Kobboi 2019-12-16 08:19:32 UTC
Created attachment 599700 [details]
build.log.gz
Comment 3 Kobboi 2019-12-17 17:23:47 UTC
Added a link ( https://github.com/openscad/openscad/pull/3105 ) in which upstream addresses this issue and schedules it for release. I can make a github PR to add that patch to the tree if you want.
Comment 4 Kobboi 2019-12-17 18:50:42 UTC
PR: https://github.com/gentoo/gentoo/pull/14028
Comment 5 Neil Bothwick 2019-12-17 20:39:57 UTC
Adding that patch to /etc/portage/patches fixes the problem for me.
Comment 6 Larry the Git Cow gentoo-dev 2019-12-20 05:45:52 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bca5d279dd1a2ceff9b672d81793aacb614adbf9

commit bca5d279dd1a2ceff9b672d81793aacb614adbf9
Author:     Christophe Lermytte <gentoo@lermytte.be>
AuthorDate: 2019-12-17 17:39:22 +0000
Commit:     Joonas Niilola <juippis@gentoo.org>
CommitDate: 2019-12-20 05:34:12 +0000

    media-gfx/openscad: fix compilation with boost-1.72
    
    Patch originates from upstream commit which is staged for release
    https://github.com/openscad/openscad/pull/3105
    
    Closes: https://bugs.gentoo.org/703022
    Package-Manager: Portage-2.3.82, Repoman-2.3.20
    Signed-off-by: Christophe Lermytte <gentoo@lermytte.be>
    Closes: https://github.com/gentoo/gentoo/pull/14028
    Signed-off-by: Joonas Niilola <juippis@gentoo.org>

 .../openscad-2019.05_fix-boost-1.72.0-build.patch  | 27 ++++++++++++++++++++++
 media-gfx/openscad/openscad-2019.05-r1.ebuild      |  4 ++++
 2 files changed, 31 insertions(+)