GNOME Bugzilla – Bug 128932
gnome-vfsmm-1.3.4 won't build with gcc-2.95.x
Last modified: 2011-01-16 23:36:28 UTC
Needed to following to compile with gcc version 2.95.4 20020723 (prerelease) diff -ru gnome-vfsmm-1.3.4.orig/examples/transfer/main.cc gnome-vfsmm-1.3.4/examples/transfer/main.cc --- gnome-vfsmm-1.3.4.orig/examples/transfer/main.cc 2003-12-05 06:43:06.000000000 -0800 +++ gnome-vfsmm-1.3.4/examples/transfer/main.cc 2003-12-09 14:45:41.000000000 -0800 @@ -38,7 +38,7 @@ switch (info.get_status()) { case Gnome::Vfs::XFER_PROGRESS_STATUS_VFSERROR: - std::cout << "VFS Error: " << gnome_vfs_result_to_string(static_cast<GnomeVFSResult>(info.get_vfs_status())) << std::endl; + std::cout << "VFS Error: " << gnome_vfs_result_to_string((GnomeVFSResult)(info.get_vfs_status())) << std::endl; exit(1); case Gnome::Vfs::XFER_PROGRESS_STATUS_OVERWRITE: diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/directory-handle.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/directory-handle.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/directory-handle.cc 2003-07-17 21:53:54.000000000 -0700 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/directory-handle.cc 2003-12-09 14:45:41.000000000 -0800 @@ -99,13 +99,13 @@ void DirectoryHandle::open(const Glib::ustring& text_uri, FileInfoOptions options) throw(exception) { - GnomeVFSResult result = gnome_vfs_directory_open(&gobj_, text_uri.c_str(), static_cast<GnomeVFSFileInfoOptions>(options) ); + GnomeVFSResult result = gnome_vfs_directory_open(&gobj_, text_uri.c_str(), (GnomeVFSFileInfoOptions)(options) ); handle_result(result); } void DirectoryHandle::open(const Glib::RefPtr<const Uri>& uri, FileInfoOptions options) throw(exception) { - GnomeVFSResult result = gnome_vfs_directory_open_from_uri(&gobj_, const_cast<GnomeVFSURI*>(uri->gobj()), static_cast<GnomeVFSFileInfoOptions>(options) ); + GnomeVFSResult result = gnome_vfs_directory_open_from_uri(&gobj_, const_cast<GnomeVFSURI*>(uri->gobj()), (GnomeVFSFileInfoOptions)(options) ); handle_result(result); } @@ -134,35 +134,35 @@ void DirectoryHandle::visit(const Glib::ustring& uri, FileInfoOptions info_options, DirectoryVisitOptions visit_options, const SlotVisit& slot) throw(exception) { SignalProxy_Visit proxy(slot); - GnomeVFSResult result = gnome_vfs_directory_visit(uri.c_str(), static_cast<GnomeVFSFileInfoOptions>(info_options), static_cast<GnomeVFSDirectoryVisitOptions>(visit_options), &SignalProxy_Visit::c_callback, &proxy); + GnomeVFSResult result = gnome_vfs_directory_visit(uri.c_str(), (GnomeVFSFileInfoOptions)(info_options), (GnomeVFSDirectoryVisitOptions)(visit_options), &SignalProxy_Visit::c_callback, &proxy); handle_result(result); } void DirectoryHandle::visit(const Glib::RefPtr<const Uri>& uri, FileInfoOptions info_options, DirectoryVisitOptions visit_options, const SlotVisit& slot) throw(exception) { SignalProxy_Visit proxy(slot); - GnomeVFSResult result = gnome_vfs_directory_visit_uri(const_cast<GnomeVFSURI*>(uri->gobj()), static_cast<GnomeVFSFileInfoOptions>(info_options), static_cast<GnomeVFSDirectoryVisitOptions>(visit_options), &SignalProxy_Visit::c_callback, &proxy); + GnomeVFSResult result = gnome_vfs_directory_visit_uri(const_cast<GnomeVFSURI*>(uri->gobj()), (GnomeVFSFileInfoOptions)(info_options), (GnomeVFSDirectoryVisitOptions)(visit_options), &SignalProxy_Visit::c_callback, &proxy); handle_result(result); } void DirectoryHandle::visit_files(const Glib::ustring& uri, const Glib::ListHandle<Glib::ustring>& file_list, FileInfoOptions info_options, DirectoryVisitOptions visit_options, const SlotVisit& slot) throw(exception) { SignalProxy_Visit proxy(slot); - GnomeVFSResult result = gnome_vfs_directory_visit_files(uri.c_str(), file_list.data(), static_cast<GnomeVFSFileInfoOptions>(info_options), static_cast<GnomeVFSDirectoryVisitOptions>(visit_options), &SignalProxy_Visit::c_callback, &proxy); + GnomeVFSResult result = gnome_vfs_directory_visit_files(uri.c_str(), file_list.data(), (GnomeVFSFileInfoOptions)(info_options), (GnomeVFSDirectoryVisitOptions)(visit_options), &SignalProxy_Visit::c_callback, &proxy); handle_result(result); } void DirectoryHandle::visit_files(const Glib::RefPtr<const Uri>& uri, const Glib::ListHandle<Glib::ustring> & file_list, FileInfoOptions info_options, DirectoryVisitOptions visit_options, const SlotVisit& slot) throw(exception) { SignalProxy_Visit proxy(slot); - GnomeVFSResult result = gnome_vfs_directory_visit_files_at_uri(const_cast<GnomeVFSURI*>(uri->gobj()), file_list.data(), static_cast<GnomeVFSFileInfoOptions>(info_options), static_cast<GnomeVFSDirectoryVisitOptions>(visit_options), &SignalProxy_Visit::c_callback, &proxy); + GnomeVFSResult result = gnome_vfs_directory_visit_files_at_uri(const_cast<GnomeVFSURI*>(uri->gobj()), file_list.data(), (GnomeVFSFileInfoOptions)(info_options), (GnomeVFSDirectoryVisitOptions)(visit_options), &SignalProxy_Visit::c_callback, &proxy); handle_result(result); } void DirectoryHandle::list_load(const Glib::ListHandle<Glib::ustring>& list, const Glib::ustring& text_uri, FileInfoOptions info_options) throw(exception) { GList* temp_list = list.data(); - GnomeVFSResult result = gnome_vfs_directory_list_load(&temp_list, text_uri.c_str(), static_cast<GnomeVFSFileInfoOptions>(info_options)); + GnomeVFSResult result = gnome_vfs_directory_list_load(&temp_list, text_uri.c_str(), (GnomeVFSFileInfoOptions)(info_options)); handle_result(result); } diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/exception.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/exception.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/exception.cc 2003-05-07 09:28:29.000000000 -0700 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/exception.cc 2003-12-09 14:45:41.000000000 -0800 @@ -39,7 +39,7 @@ Glib::ustring exception::what() const { - const char* error = gnome_vfs_result_to_string( static_cast<GnomeVFSResult>(gobj_) ); + const char* error = gnome_vfs_result_to_string( (GnomeVFSResult)(gobj_) ); if(error) return error; else diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/handle.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/handle.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/handle.cc 2003-07-17 21:53:54.000000000 -0700 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/handle.cc 2003-12-09 14:45:41.000000000 -0800 @@ -49,25 +49,25 @@ void Handle::open(const Glib::ustring& text_uri, OpenMode open_mode) throw(exception) { - GnomeVFSResult result = gnome_vfs_open(&gobj_, text_uri.c_str(), static_cast<GnomeVFSOpenMode>(open_mode)); + GnomeVFSResult result = gnome_vfs_open(&gobj_, text_uri.c_str(), (GnomeVFSOpenMode)(open_mode)); handle_result(result); } void Handle::open(const Glib::RefPtr<const Uri>& uri, OpenMode open_mode) throw(exception) { - GnomeVFSResult result = gnome_vfs_open_uri(&gobj_, const_cast<GnomeVFSURI*>(uri->gobj()), static_cast<GnomeVFSOpenMode>(open_mode)); + GnomeVFSResult result = gnome_vfs_open_uri(&gobj_, const_cast<GnomeVFSURI*>(uri->gobj()), (GnomeVFSOpenMode)(open_mode)); handle_result(result); } void Handle::create(const Glib::ustring& text_uri, OpenMode open_mode, bool exclusive, guint permissions) throw(exception) { - GnomeVFSResult result = gnome_vfs_create(&gobj_, text_uri.c_str(), static_cast<GnomeVFSOpenMode>(open_mode), exclusive, permissions); + GnomeVFSResult result = gnome_vfs_create(&gobj_, text_uri.c_str(), (GnomeVFSOpenMode)(open_mode), exclusive, permissions); handle_result(result); } void Handle::create(const Glib::RefPtr<const Uri>& uri, OpenMode open_mode, bool exclusive, guint permissions) throw(exception) { - GnomeVFSResult result = gnome_vfs_create_uri(&gobj_, const_cast<GnomeVFSURI*>(uri->gobj()), static_cast<GnomeVFSOpenMode>(open_mode), exclusive, permissions); + GnomeVFSResult result = gnome_vfs_create_uri(&gobj_, const_cast<GnomeVFSURI*>(uri->gobj()), (GnomeVFSOpenMode)(open_mode), exclusive, permissions); handle_result(result); } @@ -95,7 +95,7 @@ void Handle::seek(SeekPosition whence, FileOffset offset) throw(exception) { - GnomeVFSResult result = gnome_vfs_seek(gobj(), static_cast<GnomeVFSSeekPosition>(whence), static_cast<GnomeVFSFileOffset>(offset)); + GnomeVFSResult result = gnome_vfs_seek(gobj(), (GnomeVFSSeekPosition)(whence), static_cast<GnomeVFSFileOffset>(offset)); handle_result(result); } @@ -112,7 +112,7 @@ Glib::RefPtr<FileInfo> Handle::get_file_info(const Glib::ustring& text_uri, FileInfoOptions options) throw(exception) { GnomeVFSFileInfo* file_info = gnome_vfs_file_info_new(); - GnomeVFSResult result = gnome_vfs_get_file_info(text_uri.c_str(), file_info, static_cast<GnomeVFSFileInfoOptions>(options)); + GnomeVFSResult result = gnome_vfs_get_file_info(text_uri.c_str(), file_info, (GnomeVFSFileInfoOptions)(options)); handle_result(result); return Glib::wrap(file_info); } @@ -120,7 +120,7 @@ Glib::RefPtr<FileInfo> Handle::get_file_info(FileInfoOptions options) const throw(exception) { GnomeVFSFileInfo* file_info = gnome_vfs_file_info_new(); - GnomeVFSResult result = gnome_vfs_get_file_info_from_handle(const_cast<GnomeVFSHandle*>(gobj()), file_info, static_cast<GnomeVFSFileInfoOptions>(options)); + GnomeVFSResult result = gnome_vfs_get_file_info_from_handle(const_cast<GnomeVFSHandle*>(gobj()), file_info, (GnomeVFSFileInfoOptions)(options)); handle_result(result); return Glib::wrap(file_info); } @@ -220,14 +220,14 @@ //static: void Handle::set_file_info(const Glib::ustring& text_uri, const Glib::RefPtr<const FileInfo>& info, SetFileInfoMask mask) throw(exception) { - GnomeVFSResult result = gnome_vfs_set_file_info(text_uri.c_str(), const_cast<GnomeVFSFileInfo*>(info->gobj()), static_cast<GnomeVFSSetFileInfoMask>(mask) ); + GnomeVFSResult result = gnome_vfs_set_file_info(text_uri.c_str(), const_cast<GnomeVFSFileInfo*>(info->gobj()), (GnomeVFSSetFileInfoMask)(mask) ); handle_result(result); } //static: void Handle::set_file_info(const Glib::RefPtr<const Uri>& uri, const Glib::RefPtr<const FileInfo>& info, SetFileInfoMask mask) throw(exception) { - GnomeVFSResult result = gnome_vfs_set_file_info_uri(const_cast<GnomeVFSURI*>(uri->gobj()), const_cast<GnomeVFSFileInfo*>(info->gobj()), static_cast<GnomeVFSSetFileInfoMask>(mask) ); + GnomeVFSResult result = gnome_vfs_set_file_info_uri(const_cast<GnomeVFSURI*>(uri->gobj()), const_cast<GnomeVFSFileInfo*>(info->gobj()), (GnomeVFSSetFileInfoMask)(mask) ); handle_result(result); } diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/mime-application.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/mime-application.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/mime-application.cc 2003-11-30 03:34:16.000000000 -0800 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/mime-application.cc 2003-12-09 14:45:41.000000000 -0800 @@ -42,7 +42,7 @@ gobject_->id = g_strdup(id.c_str()); gobject_->name = g_strdup(name.c_str()); gobject_->command = g_strdup(command.c_str()); - gobject_->expects_uris = static_cast<GnomeVFSMimeApplicationArgumentType>(argument_type); + gobject_->expects_uris = (GnomeVFSMimeApplicationArgumentType)(argument_type); gobject_->supported_uri_schemes = supported_uri_schemes.data(); gobject_->can_open_multiple_files = multiple_files; gobject_->requires_terminal = requires_terminal; diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/mime-handlers.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/mime-handlers.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/mime-handlers.cc 2003-07-17 21:53:54.000000000 -0700 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/mime-handlers.cc 2003-12-09 14:45:41.000000000 -0800 @@ -37,7 +37,7 @@ MimeActionType get_default_action_type(const Glib::ustring& mime_type) { - return static_cast<Gnome::Vfs::MimeActionType>(gnome_vfs_mime_get_default_action_type(mime_type.c_str())); + return (Gnome::Vfs::MimeActionType)(gnome_vfs_mime_get_default_action_type(mime_type.c_str())); } MimeApplication get_default_application(const Glib::ustring& mime_type) @@ -148,7 +148,7 @@ void set_default_action_type(const Glib::ustring& mime_type, MimeActionType action_type) throw(exception) { - GnomeVFSResult result = gnome_vfs_mime_set_default_action_type(mime_type.c_str(), static_cast<GnomeVFSMimeActionType>(action_type)); + GnomeVFSResult result = gnome_vfs_mime_set_default_action_type(mime_type.c_str(), (GnomeVFSMimeActionType)(action_type)); handle_result(result); } diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/monitor-handle.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/monitor-handle.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/monitor-handle.cc 2003-07-17 21:53:54.000000000 -0700 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/monitor-handle.cc 2003-12-09 14:45:41.000000000 -0800 @@ -72,7 +72,7 @@ //I guess that Glib::wrap() would normally just give us the same instance a 2nd time, //but that's not available to us here because it's not a real wrapper. - (self->slot_)(*monitorTemp, strMonitorUriTemp, strInfoUriTemp, static_cast<Gnome::Vfs::MonitorEventType>(event_type)); + (self->slot_)(*monitorTemp, strMonitorUriTemp, strInfoUriTemp, (Gnome::Vfs::MonitorEventType)(event_type)); } catch(...) { @@ -113,7 +113,7 @@ if(!proxy_) //Only one callback at a time is allowed. { proxy_ = new SignalProxy_Monitor(slot, this); - GnomeVFSResult result = gnome_vfs_monitor_add(gobj_addr(), text_uri.c_str(), static_cast<GnomeVFSMonitorType>(type), &SignalProxy_Monitor::c_callback, proxy_); + GnomeVFSResult result = gnome_vfs_monitor_add(gobj_addr(), text_uri.c_str(), (GnomeVFSMonitorType)(type), &SignalProxy_Monitor::c_callback, proxy_); handle_result(result); } //TODO: else throw an exception? } diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/private.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/private.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/private.cc 2003-07-17 20:34:47.000000000 -0700 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/private.cc 2003-12-09 14:45:41.000000000 -0800 @@ -28,7 +28,7 @@ void handle_result(GnomeVFSResult result) throw(Gnome::Vfs::exception) { if(result != GNOME_VFS_OK) - throw(Gnome::Vfs::exception(static_cast<Gnome::Vfs::Result>(result))); + throw(Gnome::Vfs::exception((Gnome::Vfs::Result)(result))); } } // namespace Vfs diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/transfer-progress.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/transfer-progress.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/transfer-progress.cc 2003-11-30 03:34:20.000000000 -0800 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/transfer-progress.cc 2003-12-09 14:45:41.000000000 -0800 @@ -58,17 +58,17 @@ ProgressStatus ProgressInfo::get_status() const { - return static_cast<Gnome::Vfs::ProgressStatus>(gobj()->status); + return (Gnome::Vfs::ProgressStatus)(gobj()->status); } Result ProgressInfo::get_vfs_status() const { - return static_cast<Gnome::Vfs::Result>(gobj()->vfs_status); + return (Gnome::Vfs::Result)(gobj()->vfs_status); } Phase ProgressInfo::get_phase() const { - return static_cast<Gnome::Vfs::Phase>(gobj()->phase); + return (Gnome::Vfs::Phase)(gobj()->phase); } Glib::ustring ProgressInfo::get_source_name() const diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/transfer.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/transfer.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/transfer.cc 2003-12-05 07:20:33.000000000 -0800 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/transfer.cc 2003-12-09 14:45:41.000000000 -0800 @@ -110,9 +110,9 @@ SignalProxy_Progress proxy(slot); //TODO: Check the memory management with data() here. GnomeVFSResult result = gnome_vfs_xfer_uri_list(source_uri_list.data(), target_uri_list.data(), - static_cast<GnomeVFSXferOptions>(options), - static_cast<GnomeVFSXferErrorMode>(error_mode), - static_cast<GnomeVFSXferOverwriteMode>(overwrite_mode), + (GnomeVFSXferOptions)(options), + (GnomeVFSXferErrorMode)(error_mode), + (GnomeVFSXferOverwriteMode)(overwrite_mode), &SignalProxy_Progress::c_callback, &proxy); handle_result(result); @@ -135,9 +135,9 @@ { SignalProxy_Progress proxy(slot); GnomeVFSResult result = gnome_vfs_xfer_uri(source_uri->gobj(), target_uri->gobj(), - static_cast<GnomeVFSXferOptions>(options), - static_cast<GnomeVFSXferErrorMode>(error_mode), - static_cast<GnomeVFSXferOverwriteMode>(overwrite_mode), + (GnomeVFSXferOptions)(options), + (GnomeVFSXferErrorMode)(error_mode), + (GnomeVFSXferOverwriteMode)(overwrite_mode), &SignalProxy_Progress::c_callback, &proxy); handle_result(result); @@ -176,8 +176,8 @@ { SignalProxy_Progress proxy(slot); GnomeVFSResult result = gnome_vfs_xfer_delete_list(source_uri_list.data(), - static_cast<GnomeVFSXferErrorMode>(error_mode), - static_cast<GnomeVFSXferOptions>(options), + (GnomeVFSXferErrorMode)(error_mode), + (GnomeVFSXferOptions)(options), &SignalProxy_Progress::c_callback, &proxy); handle_result(result); diff -ru gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/uri.cc gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/uri.cc --- gnome-vfsmm-1.3.4.orig/libgnomevfs/libgnomevfsmm/uri.cc 2003-11-30 03:34:12.000000000 -0800 +++ gnome-vfsmm-1.3.4/libgnomevfs/libgnomevfsmm/uri.cc 2003-12-09 14:45:41.000000000 -0800 @@ -42,7 +42,7 @@ Glib::RefPtr<FileInfo> Uri::get_file_info(FileInfoOptions options) const throw(exception) { GnomeVFSFileInfo* file_info = gnome_vfs_file_info_new(); - GnomeVFSResult result = gnome_vfs_get_file_info_uri(const_cast<GnomeVFSURI*>(gobj()), file_info, static_cast<GnomeVFSFileInfoOptions>(options)); + GnomeVFSResult result = gnome_vfs_get_file_info_uri(const_cast<GnomeVFSURI*>(gobj()), file_info, (GnomeVFSFileInfoOptions)(options)); handle_result(result); return Glib::wrap(file_info); }
Thanks, but please _attach_ your patch and patch the ChangeLog. In general, please see: http://www.gtkmm.org/bugs.shtml
We will not try to support gcc 2.9* for gtkmm 2.4, but we will happily apply patches that anyone provides. Please reopen this bug if you have a patch that fixes this for you. This bug has a patch, but there isn't much point in applying it until gtkmm 2.4 builds with gcc 2.9*. That will be even less likely when gtkmm 2.4 uses libsigc++ 2, as it soon will.