View Bug Details

IDProjectCategoryView StatusLast Update
0001816DCP-o-maticCompatibilitypublic2020-12-16 00:38
Reporteracidhell Assigned Tocarl  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Platformamd64OSGENTOOOS VersionUbuntu
Product Version2.14.31 
Summary0001816: Cannot compile with boost greater than 1.72
Description

Cannot compile with boost greater than 1.72 like 1.73 or 1.74

TagsNo tags attached.
Branch
Estimated weeks required
Estimated work required

Activities

carl

2020-08-27 23:20

administrator   ~0003918

Last edited: 2020-08-27 23:22

Thanks for the report! Can you apply the attached patch and see if it helps? If it works, I can apply it to the master branch.

boost.patch (20,660 bytes)   
commit eb2cd260cd8a080dc97dc9bd49c5365d173a4312
Author: Carl Hetherington <cth@carlh.net>
Date:   Thu Aug 27 20:37:32 2020 +0000

    Build fixes for Boost >= 1.73

diff --git a/src/lib/analyse_audio_job.cc b/src/lib/analyse_audio_job.cc
index d52b40515..ae5c6a0ba 100644
--- a/src/lib/analyse_audio_job.cc
+++ b/src/lib/analyse_audio_job.cc
@@ -47,6 +47,7 @@ using std::min;
 using std::cout;
 using boost::shared_ptr;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 int const AnalyseAudioJob::_num_points = 1024;
 
diff --git a/src/lib/butler.cc b/src/lib/butler.cc
index ab3e9b94e..80c1b38c3 100644
--- a/src/lib/butler.cc
+++ b/src/lib/butler.cc
@@ -38,6 +38,7 @@ using boost::shared_ptr;
 using boost::bind;
 using boost::optional;
 using boost::function;
+using namespace boost::placeholders;
 
 /** Minimum video readahead in frames */
 #define MINIMUM_VIDEO_READAHEAD 10
diff --git a/src/lib/dcp_video.cc b/src/lib/dcp_video.cc
index 6f32b6686..cef2da364 100644
--- a/src/lib/dcp_video.cc
+++ b/src/lib/dcp_video.cc
@@ -59,6 +59,7 @@ using boost::shared_ptr;
 using dcp::Size;
 using dcp::Data;
 using dcp::raw_convert;
+using namespace boost::placeholders;
 
 #define DCI_COEFFICENT (48.0 / 52.37)
 
@@ -115,7 +116,7 @@ DCPVideo::convert_to_xyz (shared_ptr<const PlayerVideo> frame, dcp::NoteHandler
 Data
 DCPVideo::encode_locally ()
 {
-	Data enc = compress_j2k (
+	Data enc = dcp::compress_j2k (
 		convert_to_xyz (_frame, boost::bind(&Log::dcp_log, dcpomatic_log.get(), _1, _2)),
 		_j2k_bandwidth,
 		_frames_per_second,
diff --git a/src/lib/encode_server_finder.cc b/src/lib/encode_server_finder.cc
index 6cdd8ce3c..50b11bd6f 100644
--- a/src/lib/encode_server_finder.cc
+++ b/src/lib/encode_server_finder.cc
@@ -40,6 +40,7 @@ using boost::shared_ptr;
 using boost::scoped_array;
 using boost::weak_ptr;
 using boost::optional;
+using namespace boost::placeholders;
 using dcp::raw_convert;
 
 EncodeServerFinder* EncodeServerFinder::_instance = 0;
diff --git a/src/lib/ffmpeg_encoder.cc b/src/lib/ffmpeg_encoder.cc
index 25ad4a54c..fde5a5963 100644
--- a/src/lib/ffmpeg_encoder.cc
+++ b/src/lib/ffmpeg_encoder.cc
@@ -41,6 +41,7 @@ using std::map;
 using boost::shared_ptr;
 using boost::bind;
 using boost::weak_ptr;
+using namespace boost::placeholders;
 
 FFmpegEncoder::FFmpegEncoder (
 	shared_ptr<const Film> film,
diff --git a/src/lib/ffmpeg_file_encoder.cc b/src/lib/ffmpeg_file_encoder.cc
index 294b03162..7d4126d45 100644
--- a/src/lib/ffmpeg_file_encoder.cc
+++ b/src/lib/ffmpeg_file_encoder.cc
@@ -38,6 +38,7 @@ using std::pair;
 using boost::shared_ptr;
 using boost::bind;
 using boost::weak_ptr;
+using namespace boost::placeholders;
 
 int FFmpegFileEncoder::_video_stream_index = 0;
 int FFmpegFileEncoder::_audio_stream_index = 1;
diff --git a/src/lib/hints.cc b/src/lib/hints.cc
index df29a3336..576e6e113 100644
--- a/src/lib/hints.cc
+++ b/src/lib/hints.cc
@@ -49,6 +49,7 @@ using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::optional;
 using boost::bind;
+using namespace boost::placeholders;
 
 Hints::Hints (weak_ptr<const Film> film)
 	: _film (film)
diff --git a/src/lib/playlist.cc b/src/lib/playlist.cc
index 6d125afa6..aea798f2c 100644
--- a/src/lib/playlist.cc
+++ b/src/lib/playlist.cc
@@ -51,6 +51,7 @@ using boost::optional;
 using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 Playlist::Playlist ()
 	: _sequence (true)
diff --git a/src/lib/upload_job.cc b/src/lib/upload_job.cc
index fbfbb92d8..35bfd038c 100644
--- a/src/lib/upload_job.cc
+++ b/src/lib/upload_job.cc
@@ -38,6 +38,7 @@ using std::string;
 using std::min;
 using boost::shared_ptr;
 using boost::scoped_ptr;
+using namespace boost::placeholders;
 
 UploadJob::UploadJob (shared_ptr<const Film> film)
 	: Job (film)
diff --git a/src/lib/verify_dcp_job.cc b/src/lib/verify_dcp_job.cc
index 35d3225f1..27a5addef 100644
--- a/src/lib/verify_dcp_job.cc
+++ b/src/lib/verify_dcp_job.cc
@@ -27,6 +27,7 @@ using std::string;
 using std::vector;
 using boost::shared_ptr;
 using boost::optional;
+using namespace boost::placeholders;
 
 VerifyDCPJob::VerifyDCPJob (vector<boost::filesystem::path> directories)
 	: Job (shared_ptr<Film>())
diff --git a/src/tools/dcpomatic.cc b/src/tools/dcpomatic.cc
index 9d40ff3bd..17ed82b4d 100644
--- a/src/tools/dcpomatic.cc
+++ b/src/tools/dcpomatic.cc
@@ -125,6 +125,7 @@ using boost::optional;
 using boost::function;
 using boost::is_any_of;
 using boost::algorithm::find;
+using namespace boost::placeholders;
 using dcp::raw_convert;
 
 class FilmChangedClosingDialog : public boost::noncopyable
diff --git a/src/tools/dcpomatic_batch.cc b/src/tools/dcpomatic_batch.cc
index e3beb8dc6..d07b9eb72 100644
--- a/src/tools/dcpomatic_batch.cc
+++ b/src/tools/dcpomatic_batch.cc
@@ -53,6 +53,7 @@ using boost::shared_ptr;
 using boost::thread;
 using boost::scoped_array;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 static list<boost::filesystem::path> films_to_load;
 
diff --git a/src/tools/dcpomatic_playlist.cc b/src/tools/dcpomatic_playlist.cc
index 64549765f..670824460 100644
--- a/src/tools/dcpomatic_playlist.cc
+++ b/src/tools/dcpomatic_playlist.cc
@@ -44,6 +44,7 @@ using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::bind;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 class ContentDialog : public wxDialog, public ContentStore
 {
diff --git a/src/tools/dcpomatic_server.cc b/src/tools/dcpomatic_server.cc
index 1554c02f4..188e42580 100644
--- a/src/tools/dcpomatic_server.cc
+++ b/src/tools/dcpomatic_server.cc
@@ -48,6 +48,7 @@ using boost::thread;
 using boost::bind;
 using boost::optional;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 enum {
 	ID_status = 1,
diff --git a/src/tools/server_test.cc b/src/tools/server_test.cc
index 1dc6fa6ca..ea1ba401b 100644
--- a/src/tools/server_test.cc
+++ b/src/tools/server_test.cc
@@ -43,6 +43,7 @@ using std::pair;
 using boost::shared_ptr;
 using boost::optional;
 using boost::bind;
+using namespace boost::placeholders;
 using dcp::Data;
 
 static shared_ptr<Film> film;
diff --git a/src/wx/audio_dialog.cc b/src/wx/audio_dialog.cc
index fadda5951..6aab5d968 100644
--- a/src/wx/audio_dialog.cc
+++ b/src/wx/audio_dialog.cc
@@ -42,6 +42,7 @@ using boost::bind;
 using boost::optional;
 using boost::const_pointer_cast;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 /** @param parent Parent window.
  *  @param film Film we are using.
diff --git a/src/wx/audio_mapping_view.cc b/src/wx/audio_mapping_view.cc
index 634d2fe73..80d713ddc 100644
--- a/src/wx/audio_mapping_view.cc
+++ b/src/wx/audio_mapping_view.cc
@@ -46,6 +46,7 @@ using std::pair;
 using std::make_pair;
 using boost::shared_ptr;
 using boost::optional;
+using namespace boost::placeholders;
 using dcp::locale_convert;
 
 #define INDICATOR_SIZE 20
diff --git a/src/wx/audio_panel.cc b/src/wx/audio_panel.cc
index ccdb57907..f4edd7e64 100644
--- a/src/wx/audio_panel.cc
+++ b/src/wx/audio_panel.cc
@@ -46,6 +46,7 @@ using std::pair;
 using boost::dynamic_pointer_cast;
 using boost::shared_ptr;
 using boost::optional;
+using namespace boost::placeholders;
 
 AudioPanel::AudioPanel (ContentPanel* p)
 	: ContentSubPanel (p, _("Audio"))
diff --git a/src/wx/barco_alchemy_certificate_panel.cc b/src/wx/barco_alchemy_certificate_panel.cc
index a4156a0e6..e48533144 100644
--- a/src/wx/barco_alchemy_certificate_panel.cc
+++ b/src/wx/barco_alchemy_certificate_panel.cc
@@ -27,6 +27,7 @@
 
 using std::string;
 using boost::optional;
+using namespace boost::placeholders;
 
 BarcoAlchemyCertificatePanel::BarcoAlchemyCertificatePanel (DownloadCertificateDialog* dialog)
 	: DownloadCertificatePanel (dialog)
diff --git a/src/wx/christie_certificate_panel.cc b/src/wx/christie_certificate_panel.cc
index 43a9a2432..8761e643d 100644
--- a/src/wx/christie_certificate_panel.cc
+++ b/src/wx/christie_certificate_panel.cc
@@ -27,6 +27,7 @@
 
 using std::string;
 using boost::optional;
+using namespace boost::placeholders;
 
 ChristieCertificatePanel::ChristieCertificatePanel (DownloadCertificateDialog* dialog)
 	: DownloadCertificatePanel (dialog)
diff --git a/src/wx/cinema_dialog.cc b/src/wx/cinema_dialog.cc
index 36aabf776..f6dd4cdc2 100644
--- a/src/wx/cinema_dialog.cc
+++ b/src/wx/cinema_dialog.cc
@@ -31,6 +31,7 @@ using std::back_inserter;
 using std::list;
 using std::cout;
 using boost::bind;
+using namespace boost::placeholders;
 
 static string
 column (string s)
diff --git a/src/wx/config_dialog.cc b/src/wx/config_dialog.cc
index fecb55ea7..20c7f7867 100644
--- a/src/wx/config_dialog.cc
+++ b/src/wx/config_dialog.cc
@@ -34,6 +34,7 @@ using boost::bind;
 using boost::optional;
 using boost::shared_ptr;
 using boost::function;
+using namespace boost::placeholders;
 
 static
 bool
diff --git a/src/wx/confirm_kdm_email_dialog.cc b/src/wx/confirm_kdm_email_dialog.cc
index eca34b5cf..9b0e04ce0 100644
--- a/src/wx/confirm_kdm_email_dialog.cc
+++ b/src/wx/confirm_kdm_email_dialog.cc
@@ -28,6 +28,7 @@
 
 using std::list;
 using std::string;
+using namespace boost::placeholders;
 
 ConfirmKDMEmailDialog::ConfirmKDMEmailDialog (wxWindow* parent, list<string> emails)
 	: QuestionDialog (parent, _("Confirm KDM email"), _("Send emails"), _("Don't send emails"))
diff --git a/src/wx/content_panel.cc b/src/wx/content_panel.cc
index 9a3e5ce9a..4f660d5ab 100644
--- a/src/wx/content_panel.cc
+++ b/src/wx/content_panel.cc
@@ -61,6 +61,7 @@ using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::dynamic_pointer_cast;
 using boost::optional;
+using namespace boost::placeholders;
 
 class LimitedSplitter : public wxSplitterWindow
 {
diff --git a/src/wx/content_sub_panel.cc b/src/wx/content_sub_panel.cc
index 5cdd2e5c3..0c99c6cf6 100644
--- a/src/wx/content_sub_panel.cc
+++ b/src/wx/content_sub_panel.cc
@@ -30,6 +30,7 @@
 using std::list;
 using std::string;
 using boost::shared_ptr;
+using namespace boost::placeholders;
 
 ContentSubPanel::ContentSubPanel (ContentPanel* p, wxString name)
 	: wxScrolledWindow (p->notebook(), wxID_ANY)
diff --git a/src/wx/content_widget.h b/src/wx/content_widget.h
index c4ae4d591..71f338539 100644
--- a/src/wx/content_widget.h
+++ b/src/wx/content_widget.h
@@ -105,7 +105,7 @@ public:
 		update_from_model ();
 
 		for (typename List::iterator i = _content.begin(); i != _content.end(); ++i) {
-			_connections.push_back ((*i)->Change.connect (boost::bind (&ContentWidget::model_changed, this, _1, _3)));
+			_connections.push_back ((*i)->Change.connect (boost::bind (&ContentWidget::model_changed, this, boost::placeholders::_1, boost::placeholders::_3)));
 		}
 	}
 
diff --git a/src/wx/dcp_panel.cc b/src/wx/dcp_panel.cc
index 3defe75e4..e4786ce94 100644
--- a/src/wx/dcp_panel.cc
+++ b/src/wx/dcp_panel.cc
@@ -58,6 +58,7 @@ using std::max;
 using std::make_pair;
 using boost::lexical_cast;
 using boost::shared_ptr;
+using namespace boost::placeholders;
 using dcp::locale_convert;
 
 DCPPanel::DCPPanel (wxNotebook* n, boost::shared_ptr<Film> film)
diff --git a/src/wx/dolby_doremi_certificate_panel.cc b/src/wx/dolby_doremi_certificate_panel.cc
index b047f6468..cb84ae8cd 100644
--- a/src/wx/dolby_doremi_certificate_panel.cc
+++ b/src/wx/dolby_doremi_certificate_panel.cc
@@ -36,6 +36,7 @@ using std::cout;
 using std::list;
 using boost::function;
 using boost::optional;
+using namespace boost::placeholders;
 using dcp::raw_convert;
 
 DolbyDoremiCertificatePanel::DolbyDoremiCertificatePanel (DownloadCertificateDialog* dialog)
diff --git a/src/wx/editable_list.h b/src/wx/editable_list.h
index a7c1a6102..68aa133d1 100644
--- a/src/wx/editable_list.h
+++ b/src/wx/editable_list.h
@@ -92,7 +92,7 @@ public:
 
 		_list->Bind (wxEVT_COMMAND_LIST_ITEM_SELECTED, boost::bind (&EditableList::selection_changed, this));
 		_list->Bind (wxEVT_COMMAND_LIST_ITEM_DESELECTED, boost::bind (&EditableList::selection_changed, this));
-		_list->Bind (wxEVT_SIZE, boost::bind (&EditableList::resized, this, _1));
+		_list->Bind (wxEVT_SIZE, boost::bind (&EditableList::resized, this, boost::placeholders::_1));
 
 		refresh ();
 		selection_changed ();
diff --git a/src/wx/film_editor.cc b/src/wx/film_editor.cc
index a017175f5..9f6abf07d 100644
--- a/src/wx/film_editor.cc
+++ b/src/wx/film_editor.cc
@@ -41,6 +41,7 @@ using std::list;
 using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::optional;
+using namespace boost::placeholders;
 
 FilmEditor::FilmEditor (wxWindow* parent, weak_ptr<FilmViewer> viewer)
 	: wxPanel (parent)
diff --git a/src/wx/film_viewer.cc b/src/wx/film_viewer.cc
index f68b21309..909555020 100644
--- a/src/wx/film_viewer.cc
+++ b/src/wx/film_viewer.cc
@@ -67,6 +67,7 @@ using boost::shared_ptr;
 using boost::dynamic_pointer_cast;
 using boost::weak_ptr;
 using boost::optional;
+using namespace boost::placeholders;
 using dcp::Size;
 
 static
diff --git a/src/wx/focus_manager.cc b/src/wx/focus_manager.cc
index f4f23cb28..bd7353fc0 100644
--- a/src/wx/focus_manager.cc
+++ b/src/wx/focus_manager.cc
@@ -21,6 +21,8 @@
 #include "focus_manager.h"
 #include <wx/textctrl.h>
 
+using namespace boost::placeholders;
+
 FocusManager* FocusManager::_instance;
 
 FocusManager *
diff --git a/src/wx/full_config_dialog.cc b/src/wx/full_config_dialog.cc
index e6147c3ea..3208d7b8d 100644
--- a/src/wx/full_config_dialog.cc
+++ b/src/wx/full_config_dialog.cc
@@ -70,6 +70,7 @@ using boost::bind;
 using boost::shared_ptr;
 using boost::function;
 using boost::optional;
+using namespace boost::placeholders;
 using dcp::locale_convert;
 
 class FullGeneralPage : public GeneralPage
diff --git a/src/wx/gdc_certificate_panel.cc b/src/wx/gdc_certificate_panel.cc
index 2d47b427e..028ba16d8 100644
--- a/src/wx/gdc_certificate_panel.cc
+++ b/src/wx/gdc_certificate_panel.cc
@@ -27,6 +27,7 @@
 
 using std::string;
 using boost::optional;
+using namespace boost::placeholders;
 
 GDCCertificatePanel::GDCCertificatePanel (DownloadCertificateDialog* dialog)
 	: DownloadCertificatePanel (dialog)
diff --git a/src/wx/hints_dialog.cc b/src/wx/hints_dialog.cc
index f8d03626f..19382b7aa 100644
--- a/src/wx/hints_dialog.cc
+++ b/src/wx/hints_dialog.cc
@@ -36,6 +36,7 @@ using boost::shared_ptr;
 using boost::optional;
 using boost::bind;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 HintsDialog::HintsDialog (wxWindow* parent, boost::weak_ptr<Film> film, bool ok)
 	: wxDialog (parent, wxID_ANY, _("Hints"))
diff --git a/src/wx/html_dialog.cc b/src/wx/html_dialog.cc
index b5f86e7a1..86b1b6ce6 100644
--- a/src/wx/html_dialog.cc
+++ b/src/wx/html_dialog.cc
@@ -26,6 +26,8 @@
 #include <wx/fs_mem.h>
 #include <iostream>
 
+using namespace boost::placeholders;
+
 HTMLDialog::HTMLDialog (wxWindow* parent, wxString title, wxString html)
 	: wxDialog (parent, wxID_ANY, title)
 {
diff --git a/src/wx/job_manager_view.cc b/src/wx/job_manager_view.cc
index 42d5f9dbe..afefa6e21 100644
--- a/src/wx/job_manager_view.cc
+++ b/src/wx/job_manager_view.cc
@@ -42,6 +42,7 @@ using std::cout;
 using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::bind;
+using namespace boost::placeholders;
 
 /** @param parent Parent window.
  *  @param batch true to use BatchJobView, false to use NormalJobView.
diff --git a/src/wx/kdm_dialog.cc b/src/wx/kdm_dialog.cc
index 920f54a3e..cecca7c31 100644
--- a/src/wx/kdm_dialog.cc
+++ b/src/wx/kdm_dialog.cc
@@ -51,6 +51,7 @@ using std::make_pair;
 using std::runtime_error;
 using boost::shared_ptr;
 using boost::bind;
+using namespace boost::placeholders;
 
 KDMDialog::KDMDialog (wxWindow* parent, shared_ptr<const Film> film)
 	: wxDialog (parent, wxID_ANY, _("Make KDMs"))
diff --git a/src/wx/nag_dialog.cc b/src/wx/nag_dialog.cc
index abe460869..720c9a314 100644
--- a/src/wx/nag_dialog.cc
+++ b/src/wx/nag_dialog.cc
@@ -25,6 +25,7 @@
 #include <boost/foreach.hpp>
 
 using boost::shared_ptr;
+using namespace boost::placeholders;
 
 NagDialog::NagDialog (wxWindow* parent, Config::Nag nag, wxString message, bool can_cancel)
 	: wxDialog (parent, wxID_ANY, _("Important notice"))
diff --git a/src/wx/recreate_chain_dialog.cc b/src/wx/recreate_chain_dialog.cc
index 1dd14e0c8..79d9f279f 100644
--- a/src/wx/recreate_chain_dialog.cc
+++ b/src/wx/recreate_chain_dialog.cc
@@ -28,6 +28,7 @@
 
 using std::list;
 using std::string;
+using namespace boost::placeholders;
 
 RecreateChainDialog::RecreateChainDialog (wxWindow* parent)
 	: QuestionDialog (parent, _("Certificate chain"), _("Recreate signing certificates"), _("Do nothing"))
diff --git a/src/wx/save_template_dialog.cc b/src/wx/save_template_dialog.cc
index 691d37a1a..453c2d09b 100644
--- a/src/wx/save_template_dialog.cc
+++ b/src/wx/save_template_dialog.cc
@@ -24,6 +24,7 @@
 #include <boost/foreach.hpp>
 
 using std::string;
+using namespace boost::placeholders;
 
 SaveTemplateDialog::SaveTemplateDialog (wxWindow* parent)
 	: TableDialog (parent, _("Save template"), 2, 1, true)
diff --git a/src/wx/screen_dialog.cc b/src/wx/screen_dialog.cc
index 6bfc0da4c..39462e823 100644
--- a/src/wx/screen_dialog.cc
+++ b/src/wx/screen_dialog.cc
@@ -38,6 +38,7 @@ using std::cout;
 using std::vector;
 using boost::optional;
 using boost::bind;
+using namespace boost::placeholders;
 
 static string
 column (TrustedDevice d)
diff --git a/src/wx/subtitle_appearance_dialog.cc b/src/wx/subtitle_appearance_dialog.cc
index ad4c03850..81e1fa81a 100644
--- a/src/wx/subtitle_appearance_dialog.cc
+++ b/src/wx/subtitle_appearance_dialog.cc
@@ -40,6 +40,7 @@ using boost::shared_ptr;
 using boost::bind;
 using boost::dynamic_pointer_cast;
 using boost::optional;
+using namespace boost::placeholders;
 
 int const SubtitleAppearanceDialog::NONE = 0;
 int const SubtitleAppearanceDialog::OUTLINE = 1;
diff --git a/src/wx/templates_dialog.cc b/src/wx/templates_dialog.cc
index 4ddd3ad92..9772ddbab 100644
--- a/src/wx/templates_dialog.cc
+++ b/src/wx/templates_dialog.cc
@@ -28,6 +28,7 @@
 
 using std::string;
 using boost::bind;
+using namespace boost::placeholders;
 
 TemplatesDialog::TemplatesDialog (wxWindow* parent)
 	: wxDialog (parent, wxID_ANY, _("Templates"))
diff --git a/src/wx/text_view.cc b/src/wx/text_view.cc
index 9b591b191..fd36a6752 100644
--- a/src/wx/text_view.cc
+++ b/src/wx/text_view.cc
@@ -35,6 +35,7 @@ using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::bind;
 using boost::dynamic_pointer_cast;
+using namespace boost::placeholders;
 
 TextView::TextView (
 	wxWindow* parent, shared_ptr<Film> film, shared_ptr<Content> content, shared_ptr<TextContent> text, shared_ptr<Decoder> decoder, weak_ptr<FilmViewer> viewer
diff --git a/src/wx/timeline.cc b/src/wx/timeline.cc
index de5f05ae7..54fe696b3 100644
--- a/src/wx/timeline.cc
+++ b/src/wx/timeline.cc
@@ -54,6 +54,7 @@ using boost::weak_ptr;
 using boost::dynamic_pointer_cast;
 using boost::bind;
 using boost::optional;
+using namespace boost::placeholders;
 
 /* 3 hours in 640 pixels */
 double const Timeline::_minimum_pixels_per_second = 640.0 / (60 * 60 * 3);
diff --git a/src/wx/timeline_content_view.cc b/src/wx/timeline_content_view.cc
index a55526c88..cc50dedab 100644
--- a/src/wx/timeline_content_view.cc
+++ b/src/wx/timeline_content_view.cc
@@ -27,6 +27,7 @@
 
 using std::list;
 using boost::shared_ptr;
+using namespace boost::placeholders;
 
 TimelineContentView::TimelineContentView (Timeline& tl, shared_ptr<Content> c)
 	: TimelineView (tl)
diff --git a/src/wx/timeline_dialog.cc b/src/wx/timeline_dialog.cc
index 3af86b707..84f02d4cf 100644
--- a/src/wx/timeline_dialog.cc
+++ b/src/wx/timeline_dialog.cc
@@ -33,6 +33,7 @@ using std::list;
 using std::cout;
 using std::string;
 using boost::shared_ptr;
+using namespace boost::placeholders;
 
 TimelineDialog::TimelineDialog (ContentPanel* cp, shared_ptr<Film> film)
 	: wxDialog (
diff --git a/src/wx/timing_panel.cc b/src/wx/timing_panel.cc
index f2fd65930..15b838c28 100644
--- a/src/wx/timing_panel.cc
+++ b/src/wx/timing_panel.cc
@@ -51,6 +51,7 @@ using boost::shared_ptr;
 using boost::weak_ptr;
 using boost::dynamic_pointer_cast;
 using boost::optional;
+using namespace boost::placeholders;
 using dcp::locale_convert;
 
 TimingPanel::TimingPanel (ContentPanel* p, weak_ptr<FilmViewer> viewer)
diff --git a/src/wx/video_panel.cc b/src/wx/video_panel.cc
index f74157faf..54bfe8fa5 100644
--- a/src/wx/video_panel.cc
+++ b/src/wx/video_panel.cc
@@ -53,6 +53,7 @@ using boost::shared_ptr;
 using boost::dynamic_pointer_cast;
 using boost::bind;
 using boost::optional;
+using namespace boost::placeholders;
 
 static VideoContentScale
 index_to_scale (int n)
boost.patch (20,660 bytes)   

acidhell

2020-08-30 13:14

reporter   ~0003919

The patch works fine. You can apply it to master branch.
Thank you very much. Keep up the good work.
Wish I could do more to help

carl

2020-08-31 11:25

administrator   ~0003920

Last edited: 2020-08-31 11:27

@carl the placeholders namespace was added to boost in db56733e4ed2125944b89e01cf36a9e451dd36f5 on 27/5/2015, so it looks like it's in boost 1.61.0 (or maybe 1.60.0).

carl

2020-09-01 15:39

administrator   ~0003921

Thanks for checking, I've applied an approximation to that patch to master and v2.15.x.

Bug History

Date Modified Username Field Change
2020-08-27 18:56 acidhell New Bug
2020-08-27 23:20 carl File Added: boost.patch
2020-08-27 23:20 carl Note Added: 0003918
2020-08-27 23:21 carl Assigned To => carl
2020-08-27 23:21 carl Status new => confirmed
2020-08-27 23:21 carl Note Edited: 0003918
2020-08-27 23:22 carl Note Edited: 0003918
2020-08-30 13:14 acidhell Note Added: 0003919
2020-08-31 11:25 carl Note Added: 0003920
2020-08-31 11:27 carl Note Edited: 0003920
2020-09-01 15:39 carl Status confirmed => resolved
2020-09-01 15:39 carl Resolution open => fixed
2020-09-01 15:39 carl Note Added: 0003921
2020-12-16 00:38 carl Status resolved => closed