From 5bdce34d722233ea81557d02ebe213cc83cf4d7a Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Sun, 12 Mar 2023 05:36:09 +0200 Subject: Fix compile errors for older GCC and Clang --- bpkg/system-package-manager-debian.cxx | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/bpkg/system-package-manager-debian.cxx b/bpkg/system-package-manager-debian.cxx index 3037730..7be5be5 100644 --- a/bpkg/system-package-manager-debian.cxx +++ b/bpkg/system-package-manager-debian.cxx @@ -2995,13 +2995,19 @@ namespace bpkg const path* cur_install (nullptr); // File being opened/written to. try { - pair main (main_install, auto_fd ()); - pair dev (dev_install, auto_fd ()); - pair doc (doc_install, auto_fd ()); - pair dbg (dbg_install, auto_fd ()); - pair com (common_install, auto_fd ()); - - auto open = [&deb, &cur_install] (pair& os, + ofdstream main_os; + ofdstream dev_os; + ofdstream doc_os; + ofdstream dbg_os; + ofdstream com_os; + + pair main (main_install, main_os); + pair dev (dev_install, dev_os); + pair doc (doc_install, doc_os); + pair dbg (dbg_install, dbg_os); + pair com (common_install, com_os); + + auto open = [&deb, &cur_install] (pair& os, const string& n) { if (!n.empty ()) @@ -3017,12 +3023,12 @@ namespace bpkg open (dbg, st.dbg); open (com, st.common); - auto is_open = [] (pair& os) + auto is_open = [] (pair& os) { return os.second.is_open (); }; - auto add = [&cur_install] (pair& os, const path& p) + auto add = [&cur_install] (pair& os, const path& p) { // Strip root. // @@ -3201,7 +3207,7 @@ namespace bpkg // Close. // - auto close = [&cur_install] (pair& os) + auto close = [&cur_install] (pair& os) { if (os.second.is_open ()) { -- cgit v1.1