On Mon, Mar 8, 2010 at 6:12 PM, Roger Håkansson <[email protected]> wrote: > On 2010-03-09 00:40, Jake Goerzen wrote: >> >> "marked-up_text.cpp", line 222: Error: Ambiguous "?:" expression, >> second operand of type "surface" and third operand of type "int" can >> be converted to one another. >> >> the relevant part of marked-up_text.cpp (line 222) contains: >> >> return draw_text(gui != NULL ? gui->getSurface() : NULL, area, >> size, colour, txt, x, y, use_tooltips, style); >> >> >> Is there some syntax I can add/modify to this statement that will >> clear up the ambiguity the compiler is complaining about? >> > > My interpretation is that the problem is that the surface class have > operators both for converting a surface object to an int as well as > converting a int to a surface object and that code is not clear on what's > the desired way. > > I had a quick look at the code in your homedir and draw_text is defined in > font.cpp and takes a surface object as first parameter so you probably want > to change that line to: > > return draw_text((gui != NULL ? gui->getSurface() : (surface)NULL), area, > size, colour, txt, x, y, use_tooltips, style); > > _______________________________________________
Thank you. I made this change and compiling continued for a long time then stopped... "./gui/widgets/generator.hpp", line 303: Warning: gui2::tgenerator_::find_widget Hides the virtual function gui2::twidget::find_widget(const std::string &, const bool) const in a virtual base. "./gui/widgets/generator.hpp", line 303: Warning: gui2::tgenerator_::find_widget Hides the virtual function gui2::twidget::find_widget(const std::string &, const bool) in a virtual base. "./gui/widgets/generator_private.hpp", line 76: Warning: gui2::policy::minimum_selection::tone::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,t_string>&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 76: Warning: gui2::policy::minimum_selection::tone::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,std::map<std::string,t_string> >&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 100: Warning: gui2::policy::minimum_selection::tnone::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,t_string>&, void(*)(gui2::twidget*)) in a virtual base."./gui/widgets/generator_private.hpp", line 100: Warning: gui2::policy::minimum_selection::tnone::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,std::map<std::string,t_string> >&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 131: Warning: gui2::policy::maximum_selection::tone::select_item Hides the virtual function gui2::tgenerator_::select_item(const unsigned, const bool) in a virtual base. "./gui/widgets/generator_private.hpp", line 141: Warning: gui2::policy::maximum_selection::tinfinite::select_item Hides the virtual function gui2::tgenerator_::select_item(const unsigned, const bool) in a virtual base. "./gui/widgets/generator_private.hpp", line 173: Error: "gui2::policy::placement::thorizontal_list::calculate_best_size() const" is expected to return a value. "./gui/widgets/generator_private.hpp", line 201: Error: "gui2::policy::placement::thorizontal_list::find_widget(const gui2::tpoint&, const bool)" is expected to return a value. "./gui/widgets/generator_private.hpp", line 205: Error: "gui2::policy::placement::thorizontal_list::find_widget(const gui2::tpoint&, const bool) const" is expected to return a value. "./gui/widgets/generator_private.hpp", line 224: Warning: gui2::policy::placement::thorizontal_list::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,t_string>&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 224: Warning: gui2::policy::placement::thorizontal_list::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,std::map<std::string,t_string> >&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 284: Warning: gui2::policy::placement::tvertical_list::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,t_string>&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 284: Warning: gui2::policy::placement::tvertical_list::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,std::map<std::string,t_string> >&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 302: Error: "gui2::policy::placement::tmatrix::calculate_best_size() const" is expected to return a value. "./gui/widgets/generator_private.hpp", line 317: Error: "gui2::policy::placement::tmatrix::find_widget(const gui2::tpoint&, const bool)" is expected to return a value. "./gui/widgets/generator_private.hpp", line 321: Error: "gui2::policy::placement::tmatrix::find_widget(const gui2::tpoint&, const bool) const" is expected to return a value. "./gui/widgets/generator_private.hpp", line 340: Warning: gui2::policy::placement::tmatrix::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,t_string>&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 340: Warning: gui2::policy::placement::tmatrix::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,std::map<std::string,t_string> >&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 357: Error: "gui2::policy::placement::tindependant::calculate_best_size() const" is expected to return a value."./gui/widgets/generator_private.hpp", line 372: Error: "gui2::policy::placement::tindependant::find_widget(const gui2::tpoint&, const bool)" is expected to return a value. "./gui/widgets/generator_private.hpp", line 376: Error: "gui2::policy::placement::tindependant::find_widget(const gui2::tpoint&, const bool) const" is expected to return a value. "./gui/widgets/generator_private.hpp", line 395: Warning: gui2::policy::placement::tindependant::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,t_string>&, void(*)(gui2::twidget*)) in a virtual base. "./gui/widgets/generator_private.hpp", line 395: Warning: gui2::policy::placement::tindependant::create_item Hides the virtual function gui2::tgenerator_::create_item(const int, boost::intrusive_ptr<const gui2::tbuilder_grid>, const std::map<std::string,std::map<std::string,t_string> >&, void(*)(gui2::twidget*)) in a virtual base. "gui/widgets/generator.cpp", line 95: Warning: grid hides gui2::tgenerator_::grid. "gui/widgets/generator.cpp", line 122: Warning: grid hides gui2::tgenerator_::grid. "gui/widgets/generator.cpp", line 142: Warning: grid hides gui2::tgenerator_::grid. "gui/widgets/generator.cpp", line 159: Warning: grid hides gui2::tgenerator_::grid. "gui/widgets/generator.cpp", line 172: Warning: grid hides gui2::tgenerator_::grid. "gui/widgets/generator.cpp", line 192: Warning: grid hides gui2::tgenerator_::grid. "gui/widgets/generator.cpp", line 253: Warning: grid hides gui2::tgenerator_::grid. 9 Error(s) and 23 Warning(s) detected. gmake[4]: *** [gui/widgets/generator.o] Error 9 gmake[4]: Leaving directory `/home/jgoerzen/mgar/wesnoth/trunk/work/solaris8-sparc/build-isa-sparcv8/wesnoth-1.6.5/src' gmake[3]: *** [all-recursive] Error 1 gmake[3]: Leaving directory `/home/jgoerzen/mgar/wesnoth/trunk/work/solaris8-sparc/build-isa-sparcv8/wesnoth-1.6.5' gmake[2]: *** [all] Error 2 gmake[2]: Leaving directory `/home/jgoerzen/mgar/wesnoth/trunk/work/solaris8-sparc/build-isa-sparcv8/wesnoth-1.6.5' gmake[1]: *** [build-work/solaris8-sparc/build-isa-sparcv8/wesnoth-1.6.5/Makefile] Error 2 gmake[1]: Leaving directory `/home/jgoerzen/mgar/wesnoth/trunk' gmake: *** [build-isa-sparcv8] Error 2 _______________________________________________ maintainers mailing list [email protected] https://lists.opencsw.org/mailman/listinfo/maintainers .:: This mailing list's archive is public. ::.
