https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61259
ilja.j.honkonen at nasa dot gov changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ilja.j.honkonen at nasa dot gov --- Comment #2 from ilja.j.honkonen at nasa dot gov --- I'm seeing this also, when I create an ofstream with () instead of {} I get a complaint from gcc-4.4 to gcc-5: #include "vector" #include "string" #include "fstream" #include "boost/filesystem.hpp" int main() { std::vector<std::string> input_files{"a.out"}; std::ofstream str( //std::ofstream str{ boost::filesystem::path(input_files[0]) .parent_path() .append("b") .generic_string() ); //}; } g++-mp-4.9 gcc.cpp -I $HOME/include -L $HOME/lib -lboost_filesystem -lboost_system -std=c++0x -W -Wall -Wextra -pedantic -O3 gcc.cpp: In function 'int main()': gcc.cpp:9:41: warning: ISO C++ forbids zero-size array 'input_files' [-Wpedantic] boost::filesystem::path(input_files[0]) ^ g++-mp-4.4 gcc.cpp -I $HOME/include -L $HOME/lib -lboost_filesystem -lboost_system -std=c++0x -W -Wall -Wextra -pedantic -O3 gcc.cpp: In function 'int main()': gcc.cpp:9: warning: ISO C++ forbids zero-size array 'input_files'