Package: fluxbox
Version: 0.9.14-1.1
Severity: important
Tags: patch
Your package fails to build with G++ 4.1. I'm filing this bug as
important for now, but when 4.1 will be the default compiler in
unstable (probably in a few weeks) I'll upgrade this to serious.
A patch is below. Obviously, this patch is a minimal patch: I
introduce one more level/hierarchy in the code so much code needs to
be intended properly; but I thought I wouldn't do that in the patch so
you can actually see what the real changes are.
> Automatic build of fluxbox_0.9.14-1.1 on bigsur by sbuild/mips 1.94
...
> if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I./FbTk -O2 -ffunction-sections
> -DSHAPE -I/usr/include/freetype2 -MT Screen.o -MD -MP -MF
> ".deps/Screen.Tpo" -c -o Screen.o Screen.cc; \
> then mv -f ".deps/Screen.Tpo" ".deps/Screen.Po"; else rm -f
> ".deps/Screen.Tpo"; exit 1; fi
> if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I./FbTk -O2 -ffunction-sections
> -DSHAPE -I/usr/include/freetype2 -MT ScreenResources.o -MD -MP -MF
> ".deps/ScreenResources.Tpo" -c -o ScreenResources.o ScreenResources.cc; \
> then mv -f ".deps/ScreenResources.Tpo" ".deps/ScreenResources.Po"; else
> rm -f ".deps/ScreenResources.Tpo"; exit 1; fi
> ScreenResources.cc:33: error: specialization of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = BScreen::PlacementPolicy]' in
> different namespace
> ScreenResources.cc:33: error: from definition of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = BScreen::PlacementPolicy]'
> ScreenResources.cc:38: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::PlacementPolicy]' in different namespace
> ScreenResources.cc:38: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::PlacementPolicy]'
> ScreenResources.cc:53: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::PlacementPolicy]' in
> different namespace
> ScreenResources.cc:53: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::PlacementPolicy]'
> ScreenResources.cc:69: error: specialization of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = BScreen::RowDirection]' in
> different namespace
> ScreenResources.cc:69: error: from definition of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = BScreen::RowDirection]'
> ScreenResources.cc:74: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::RowDirection]' in different namespace
> ScreenResources.cc:74: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::RowDirection]'
> ScreenResources.cc:85: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::RowDirection]' in different
> namespace
> ScreenResources.cc:85: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::RowDirection]'
> ScreenResources.cc:98: error: specialization of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = BScreen::ColumnDirection]' in
> different namespace
> ScreenResources.cc:98: error: from definition of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = BScreen::ColumnDirection]'
> ScreenResources.cc:103: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::ColumnDirection]' in different namespace
> ScreenResources.cc:103: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::ColumnDirection]'
> ScreenResources.cc:114: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::ColumnDirection]' in
> different namespace
> ScreenResources.cc:114: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::ColumnDirection]'
> ScreenResources.cc:126: error: specialization of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::MenuTheme::MenuMode]' in
> different namespace
> ScreenResources.cc:126: error: from definition of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::MenuTheme::MenuMode]'
> ScreenResources.cc:131: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::MenuTheme::MenuMode]' in
> different namespace
> ScreenResources.cc:131: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::MenuTheme::MenuMode]'
> ScreenResources.cc:142: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::MenuTheme::MenuMode]' in different namespace
> ScreenResources.cc:142: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::MenuTheme::MenuMode]'
> ScreenResources.cc:153: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::ResizeModel]' in different
> namespace
> ScreenResources.cc:153: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::ResizeModel]'
> ScreenResources.cc:166: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::ResizeModel]' in different namespace
> ScreenResources.cc:166: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T = BScreen::ResizeModel]'
> ScreenResources.cc:177: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::FocusModel]' in different
> namespace
> ScreenResources.cc:177: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::FocusModel]'
> ScreenResources.cc:190: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T = BScreen::FocusModel]'
> in different namespace
> ScreenResources.cc:190: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T = BScreen::FocusModel]'
> ScreenResources.cc:201: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::TabFocusModel]' in
> different namespace
> ScreenResources.cc:201: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::TabFocusModel]'
> ScreenResources.cc:214: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::TabFocusModel]' in different namespace
> ScreenResources.cc:214: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::TabFocusModel]'
> ScreenResources.cc:225: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::FollowModel]' in different
> namespace
> ScreenResources.cc:225: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = BScreen::FollowModel]'
> ScreenResources.cc:240: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> BScreen::FollowModel]' in different namespace
> ScreenResources.cc:240: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T = BScreen::FollowModel]'
> ScreenResources.cc:252: error: specialization of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::GContext::LineStyle]' in
> different namespace
> ScreenResources.cc:252: error: from definition of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::GContext::LineStyle]'
> ScreenResources.cc:257: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::GContext::LineStyle]' in
> different namespace
> ScreenResources.cc:257: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::GContext::LineStyle]'
> ScreenResources.cc:274: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::GContext::LineStyle]' in different namespace
> ScreenResources.cc:274: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::GContext::LineStyle]'
> ScreenResources.cc:287: error: specialization of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::GContext::JoinStyle]' in
> different namespace
> ScreenResources.cc:287: error: from definition of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::GContext::JoinStyle]'
> ScreenResources.cc:292: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::GContext::JoinStyle]' in
> different namespace
> ScreenResources.cc:292: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::GContext::JoinStyle]'
> ScreenResources.cc:309: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::GContext::JoinStyle]' in different namespace
> ScreenResources.cc:309: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::GContext::JoinStyle]'
> ScreenResources.cc:322: error: specialization of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::GContext::CapStyle]' in
> different namespace
> ScreenResources.cc:322: error: from definition of 'void
> FbTk::Resource<T>::setDefaultValue() [with T = FbTk::GContext::CapStyle]'
> ScreenResources.cc:327: error: specialization of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::GContext::CapStyle]' in
> different namespace
> ScreenResources.cc:327: error: from definition of 'std::string
> FbTk::Resource<T>::getString() [with T = FbTk::GContext::CapStyle]'
> ScreenResources.cc:347: error: specialization of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::GContext::CapStyle]' in different namespace
> ScreenResources.cc:347: error: from definition of 'void
> FbTk::Resource<T>::setFromString(const char*) [with T =
> FbTk::GContext::CapStyle]'
> make[5]: *** [ScreenResources.o] Error 1
--- ./src/ScreenResources.cc~ 2006-03-17 15:36:04.000000000 +0000
+++ ./src/ScreenResources.cc 2006-03-17 15:43:41.000000000 +0000
@@ -29,6 +29,8 @@
#include <string>
using namespace std;
+namespace FbTk {
+
template <>
void FbTk::Resource<BScreen::PlacementPolicy>::setDefaultValue() {
*(*this) = BScreen::ROWSMARTPLACEMENT;
@@ -358,3 +360,4 @@
setDefaultValue();
}
+}
--- ./src/Slit.cc~ 2006-03-17 15:43:52.000000000 +0000
+++ ./src/Slit.cc 2006-03-17 16:00:24.000000000 +0000
@@ -80,6 +80,8 @@
#include <algorithm>
using namespace std;
+namespace FbTk {
+
template<>
void FbTk::Resource<Slit::Placement>::setFromString(const char *strval) {
if (strcasecmp(strval, "TopLeft")==0)
@@ -160,6 +162,8 @@
return string("Vertical");
}
+}
+
namespace {
class SlitClientMenuItem: public FbTk::MenuItem{
--- ./src/MenuTheme.cc~ 2006-03-17 15:45:35.000000000 +0000
+++ ./src/MenuTheme.cc 2006-03-17 15:45:53.000000000 +0000
@@ -26,6 +26,8 @@
#include <iostream>
using namespace std;
+namespace FbTk {
+
template <>
void FbTk::ThemeItem<Shape::ShapePlace>::load(const std::string *name, const
std::string *altname) { }
@@ -50,6 +52,8 @@
*(*this) = static_cast<Shape::ShapePlace>(places);
}
+}
+
MenuTheme::MenuTheme(int screen_num):FbTk::MenuTheme(screen_num),
m_shapeplace(*this, "menu.roundCorners",
"Menu.RoundCorners") {
*m_shapeplace = Shape::NONE;
--- ./src/Resources.cc~ 2006-03-17 15:49:17.000000000 +0000
+++ ./src/Resources.cc 2006-03-17 15:50:07.000000000 +0000
@@ -37,6 +37,8 @@
//---- accessors for int, bool, and some enums with Resource ------
//-----------------------------------------------------------------
+namespace FbTk {
+
template<>
void FbTk::Resource<int>::
setFromString(const char* strval) {
@@ -250,3 +252,5 @@
sprintf(tmpstr, "%ld", m_value);
return string(tmpstr);
}
+
+}
--- ./src/Toolbar.cc~ 2006-03-17 15:57:40.000000000 +0000
+++ ./src/Toolbar.cc 2006-03-17 15:58:11.000000000 +0000
@@ -73,6 +73,8 @@
using namespace std;
+namespace FbTk {
+
template<>
void FbTk::Resource<Toolbar::Placement>::
setFromString(const char *strval) {
@@ -149,6 +151,7 @@
return string("BottomCenter");
}
+}
namespace {
class SetToolbarPlacementCmd: public FbTk::Command {
--- ./src/ClockTool.cc~ 2006-03-17 15:58:43.000000000 +0000
+++ ./src/ClockTool.cc 2006-03-17 15:58:49.000000000 +0000
@@ -50,7 +50,7 @@
class ClockMenuItem: public FbTk::MenuItem {
public:
- explicit ClockMenuItem::ClockMenuItem(ClockTool &tool):
+ explicit ClockMenuItem(ClockTool &tool):
FbTk::MenuItem(""), m_tool(tool) {
// determine 12/24 hour format
_FB_USES_NLS;
--- ./src/IconbarTool.cc~ 2006-03-17 15:58:59.000000000 +0000
+++ ./src/IconbarTool.cc 2006-03-17 15:59:17.000000000 +0000
@@ -49,6 +49,8 @@
#include <iterator>
using namespace std;
+namespace FbTk {
+
template<>
void FbTk::Resource<IconbarTool::Mode>::setFromString(const char *strval) {
if (strcasecmp(strval, "None") == 0)
@@ -191,6 +193,8 @@
return string("Icons");
}
+}
+
namespace {
class ToolbarModeMenuItem : public FbTk::MenuItem {
--
Martin Michlmayr
http://www.cyrius.com/
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]