Skip to content

missing include in popen.cpp #479

@mauro80

Description

@mauro80

Bug category

  • [ x] bug - compilation error
  • bug - compilation warning
  • bug - runtime error
  • bug - runtime warning
  • bug - logic error

Describe the bug

Linux, LLVM 22. Likely new clang skips some includes, that were previously included automatically. There is a missing #include <cstdlib> in source/matplot/util/popen.cpp

Steps to Reproduce

# Your steps go here
cmake ..  -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++  -DMATPLOTPP_BUILD_EXAMPLES=OFF  -DMATPLOTPP_BUILD_TESTS=OFF  -DMATPLOTPP_BUILD_SHARED_LIBS=ON

Output

Details
[13/45] Building CXX object source/matplot/CMakeFiles/matplot.dir/util/popen.cpp.o
FAILED: [code=1] source/matplot/CMakeFiles/matplot.dir/util/popen.cpp.o 
# personal paths
source/matplot/CMakeFiles/matplot.dir/util/popen.cpp.o.d -o source/matplot/CMakeFiles/matplot.dir/util/popen.cpp.o -c ./matplotplusplus/source/matplot/util/popen.cpp
./matplot/util/popen.cpp:152:14: error: no type named 'exit' in namespace 'std'
  152 |         std::exit(EXIT_FAILURE);
      |         ~~~~~^
1 error generated.

Platform

  • [x ] cross-platform issue - linux
  • cross-platform issue - windows
  • cross-platform issue - macos

Environment Details:

  • OS: Arch
  • OS Version: linux 6.18
  • Compiler: clang++ (works in gcc_
  • Compiler version: clang version 22.0.0git (https://github.com/llvm/llvm-project.git 367e3889fabcc3dcd3ee2d664d652ab6ec26854b) Target: x86_64-unknown-linux-gnu Thread model: posix

Additional context

Using libc++ from LLVM.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions