mirror of
https://github.com/boostorg/throw_exception.git
synced 2025-06-29 14:01:02 +02:00
Compare commits
14 Commits
feature/dr
...
develop
Author | SHA1 | Date | |
---|---|---|---|
f3d4d55f52 | |||
8b55365179 | |||
8947bbb9cb | |||
b75bf9e76f | |||
ca85c198c8 | |||
bfd94a7b41 | |||
a0ea1e5f90 | |||
2ffcfc14ee | |||
4b20f08b3f | |||
2207995f92 | |||
13124487d2 | |||
8e4c9a5f75 | |||
502caee36e | |||
d7bb0dfb16 |
@ -101,7 +101,7 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
|
|||||||
linux_pipeline(
|
linux_pipeline(
|
||||||
"Linux 16.04 GCC 4.4",
|
"Linux 16.04 GCC 4.4",
|
||||||
"cppalliance/droneubuntu1604:1",
|
"cppalliance/droneubuntu1604:1",
|
||||||
{ TOOLSET: 'gcc', COMPILER: 'g++-4.4', CXXSTD: '98,0x' },
|
{ TOOLSET: 'gcc', COMPILER: 'g++-4.4', CXXSTD: '98' },
|
||||||
"g++-4.4",
|
"g++-4.4",
|
||||||
[ "ppa:ubuntu-toolchain-r/test" ],
|
[ "ppa:ubuntu-toolchain-r/test" ],
|
||||||
),
|
),
|
||||||
@ -109,7 +109,7 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
|
|||||||
linux_pipeline(
|
linux_pipeline(
|
||||||
"Linux 16.04 GCC 4.6",
|
"Linux 16.04 GCC 4.6",
|
||||||
"cppalliance/droneubuntu1604:1",
|
"cppalliance/droneubuntu1604:1",
|
||||||
{ TOOLSET: 'gcc', COMPILER: 'g++-4.6', CXXSTD: '98,0x' },
|
{ TOOLSET: 'gcc', COMPILER: 'g++-4.6', CXXSTD: '98' },
|
||||||
"g++-4.6",
|
"g++-4.6",
|
||||||
[ "ppa:ubuntu-toolchain-r/test" ],
|
[ "ppa:ubuntu-toolchain-r/test" ],
|
||||||
),
|
),
|
||||||
@ -117,7 +117,7 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
|
|||||||
linux_pipeline(
|
linux_pipeline(
|
||||||
"Linux 16.04 GCC 4.7",
|
"Linux 16.04 GCC 4.7",
|
||||||
"cppalliance/droneubuntu1604:1",
|
"cppalliance/droneubuntu1604:1",
|
||||||
{ TOOLSET: 'gcc', COMPILER: 'g++-4.7', CXXSTD: '98,0x' },
|
{ TOOLSET: 'gcc', COMPILER: 'g++-4.7', CXXSTD: '98' },
|
||||||
"g++-4.7",
|
"g++-4.7",
|
||||||
),
|
),
|
||||||
|
|
||||||
@ -202,8 +202,8 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
|
|||||||
),
|
),
|
||||||
|
|
||||||
linux_pipeline(
|
linux_pipeline(
|
||||||
"Linux 23.04 GCC 13 32/64 UBSAN",
|
"Linux 24.04 GCC 13 32/64 UBSAN",
|
||||||
"cppalliance/droneubuntu2304:1",
|
"cppalliance/droneubuntu2404:1",
|
||||||
{ TOOLSET: 'gcc', COMPILER: 'g++-13', CXXSTD: '03,11,14,17,20,2b', ADDRMD: '32,64' } + ubsan,
|
{ TOOLSET: 'gcc', COMPILER: 'g++-13', CXXSTD: '03,11,14,17,20,2b', ADDRMD: '32,64' } + ubsan,
|
||||||
"g++-13-multilib",
|
"g++-13-multilib",
|
||||||
),
|
),
|
||||||
@ -265,22 +265,22 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
|
|||||||
),
|
),
|
||||||
|
|
||||||
linux_pipeline(
|
linux_pipeline(
|
||||||
"Linux 23.04 Clang 16",
|
"Linux 24.04 Clang 16",
|
||||||
"cppalliance/droneubuntu2304:1",
|
"cppalliance/droneubuntu2404:1",
|
||||||
{ TOOLSET: 'clang', COMPILER: 'clang++-16', CXXSTD: '03,11,14,17,20,2b' },
|
{ TOOLSET: 'clang', COMPILER: 'clang++-16', CXXSTD: '03,11,14,17,20,2b' },
|
||||||
"clang-16",
|
"clang-16",
|
||||||
),
|
),
|
||||||
|
|
||||||
linux_pipeline(
|
linux_pipeline(
|
||||||
"Linux 23.10 Clang 17 UBSAN",
|
"Linux 24.04 Clang 17 UBSAN",
|
||||||
"cppalliance/droneubuntu2310:1",
|
"cppalliance/droneubuntu2404:1",
|
||||||
{ TOOLSET: 'clang', COMPILER: 'clang++-17', CXXSTD: '03,11,14,17,20,2b' } + ubsan,
|
{ TOOLSET: 'clang', COMPILER: 'clang++-17', CXXSTD: '03,11,14,17,20,2b' } + ubsan,
|
||||||
"clang-17",
|
"clang-17",
|
||||||
),
|
),
|
||||||
|
|
||||||
linux_pipeline(
|
linux_pipeline(
|
||||||
"Linux 23.10 Clang 17 ASAN",
|
"Linux 24.04 Clang 17 ASAN",
|
||||||
"cppalliance/droneubuntu2310:1",
|
"cppalliance/droneubuntu2404:1",
|
||||||
{ TOOLSET: 'clang', COMPILER: 'clang++-17', CXXSTD: '03,11,14,17,20,2b' } + asan,
|
{ TOOLSET: 'clang', COMPILER: 'clang++-17', CXXSTD: '03,11,14,17,20,2b' } + asan,
|
||||||
"clang-17",
|
"clang-17",
|
||||||
),
|
),
|
||||||
@ -299,6 +299,13 @@ local windows_pipeline(name, image, environment, arch = "amd64") =
|
|||||||
"clang-18",
|
"clang-18",
|
||||||
),
|
),
|
||||||
|
|
||||||
|
linux_pipeline(
|
||||||
|
"Linux 24.10 Clang 19",
|
||||||
|
"cppalliance/droneubuntu2410:1",
|
||||||
|
{ TOOLSET: 'clang', COMPILER: 'clang++-19', CXXSTD: '03,11,14,17,20,2b' },
|
||||||
|
"clang-19",
|
||||||
|
),
|
||||||
|
|
||||||
macos_pipeline(
|
macos_pipeline(
|
||||||
"MacOS 10.15 Xcode 12.2 UBSAN",
|
"MacOS 10.15 Xcode 12.2 UBSAN",
|
||||||
{ TOOLSET: 'clang', COMPILER: 'clang++', CXXSTD: '03,11,14,1z' } + ubsan,
|
{ TOOLSET: 'clang', COMPILER: 'clang++', CXXSTD: '03,11,14,1z' } + ubsan,
|
||||||
|
47
.github/workflows/ci.yml
vendored
47
.github/workflows/ci.yml
vendored
@ -56,7 +56,7 @@ jobs:
|
|||||||
install: g++-12
|
install: g++-12
|
||||||
- toolset: gcc-13
|
- toolset: gcc-13
|
||||||
cxxstd: "03,11,14,17,20,2b"
|
cxxstd: "03,11,14,17,20,2b"
|
||||||
container: ubuntu:23.04
|
container: ubuntu:24.04
|
||||||
os: ubuntu-latest
|
os: ubuntu-latest
|
||||||
install: g++-13
|
install: g++-13
|
||||||
- toolset: gcc-14
|
- toolset: gcc-14
|
||||||
@ -138,13 +138,13 @@ jobs:
|
|||||||
- toolset: clang
|
- toolset: clang
|
||||||
compiler: clang++-16
|
compiler: clang++-16
|
||||||
cxxstd: "03,11,14,17,20,2b"
|
cxxstd: "03,11,14,17,20,2b"
|
||||||
container: ubuntu:23.04
|
container: ubuntu:24.04
|
||||||
os: ubuntu-latest
|
os: ubuntu-latest
|
||||||
install: clang-16
|
install: clang-16
|
||||||
- toolset: clang
|
- toolset: clang
|
||||||
compiler: clang++-17
|
compiler: clang++-17
|
||||||
cxxstd: "03,11,14,17,20,2b"
|
cxxstd: "03,11,14,17,20,2b"
|
||||||
container: ubuntu:23.10
|
container: ubuntu:24.04
|
||||||
os: ubuntu-latest
|
os: ubuntu-latest
|
||||||
install: clang-17
|
install: clang-17
|
||||||
- toolset: clang
|
- toolset: clang
|
||||||
@ -154,34 +154,48 @@ jobs:
|
|||||||
os: ubuntu-latest
|
os: ubuntu-latest
|
||||||
install: clang-18
|
install: clang-18
|
||||||
- toolset: clang
|
- toolset: clang
|
||||||
|
compiler: clang++-19
|
||||||
cxxstd: "03,11,14,17,20,2b"
|
cxxstd: "03,11,14,17,20,2b"
|
||||||
os: macos-12
|
container: ubuntu:24.10
|
||||||
|
os: ubuntu-latest
|
||||||
|
install: clang-19
|
||||||
- toolset: clang
|
- toolset: clang
|
||||||
cxxstd: "03,11,14,17,20,2b"
|
cxxstd: "03,11,14,17,20,2b"
|
||||||
os: macos-13
|
os: macos-13
|
||||||
- toolset: clang
|
- toolset: clang
|
||||||
cxxstd: "03,11,14,17,20,2b"
|
cxxstd: "03,11,14,17,20,2b"
|
||||||
os: macos-14
|
os: macos-14
|
||||||
|
- toolset: clang
|
||||||
|
cxxstd: "03,11,14,17,20,2b"
|
||||||
|
os: macos-15
|
||||||
|
|
||||||
runs-on: ${{matrix.os}}
|
runs-on: ${{matrix.os}}
|
||||||
container: ${{matrix.container}}
|
|
||||||
|
container:
|
||||||
|
image: ${{matrix.container}}
|
||||||
|
volumes:
|
||||||
|
- /node20217:/node20217:rw,rshared
|
||||||
|
- ${{ startsWith(matrix.container, 'ubuntu:1') && '/node20217:/__e/node20:ro,rshared' || ' ' }}
|
||||||
|
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: bash
|
shell: bash
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Enable Node 16
|
|
||||||
run: |
|
|
||||||
echo "ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true" >> $GITHUB_ENV
|
|
||||||
|
|
||||||
- uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Setup container environment
|
- name: Setup container environment
|
||||||
if: matrix.container
|
if: matrix.container
|
||||||
run: |
|
run: |
|
||||||
apt-get update
|
apt-get update
|
||||||
apt-get -y install sudo python3 git g++
|
apt-get -y install sudo python3 git g++ curl
|
||||||
|
|
||||||
|
- name: Install nodejs20glibc2.17
|
||||||
|
if: ${{ startsWith( matrix.container, 'ubuntu:1' ) }}
|
||||||
|
run: |
|
||||||
|
curl -LO https://archives.boost.io/misc/node/node-v20.9.0-linux-x64-glibc-217.tar.xz
|
||||||
|
tar -xf node-v20.9.0-linux-x64-glibc-217.tar.xz --strip-components 1 -C /node20217
|
||||||
|
ldd /__e/node20/bin/node
|
||||||
|
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Install packages
|
- name: Install packages
|
||||||
if: matrix.install
|
if: matrix.install
|
||||||
@ -287,9 +301,10 @@ jobs:
|
|||||||
include:
|
include:
|
||||||
- os: ubuntu-20.04
|
- os: ubuntu-20.04
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
- os: macos-12
|
- os: ubuntu-24.04
|
||||||
- os: macos-13
|
- os: macos-13
|
||||||
- os: macos-14
|
- os: macos-14
|
||||||
|
- os: macos-15
|
||||||
|
|
||||||
runs-on: ${{matrix.os}}
|
runs-on: ${{matrix.os}}
|
||||||
|
|
||||||
@ -335,9 +350,10 @@ jobs:
|
|||||||
include:
|
include:
|
||||||
- os: ubuntu-20.04
|
- os: ubuntu-20.04
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
- os: macos-12
|
- os: ubuntu-24.04
|
||||||
- os: macos-13
|
- os: macos-13
|
||||||
- os: macos-14
|
- os: macos-14
|
||||||
|
- os: macos-15
|
||||||
|
|
||||||
runs-on: ${{matrix.os}}
|
runs-on: ${{matrix.os}}
|
||||||
|
|
||||||
@ -393,9 +409,10 @@ jobs:
|
|||||||
include:
|
include:
|
||||||
- os: ubuntu-20.04
|
- os: ubuntu-20.04
|
||||||
- os: ubuntu-22.04
|
- os: ubuntu-22.04
|
||||||
- os: macos-12
|
- os: ubuntu-24.04
|
||||||
- os: macos-13
|
- os: macos-13
|
||||||
- os: macos-14
|
- os: macos-14
|
||||||
|
- os: macos-15
|
||||||
|
|
||||||
runs-on: ${{matrix.os}}
|
runs-on: ${{matrix.os}}
|
||||||
|
|
||||||
|
21
build.jam
Normal file
21
build.jam
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
# Copyright 2023-2024 René Ferdinand Rivera Morell
|
||||||
|
# Copyright 2024 Peter Dimov
|
||||||
|
# Distributed under the Boost Software License, Version 1.0.
|
||||||
|
# https://www.boost.org/LICENSE_1_0.txt
|
||||||
|
|
||||||
|
require-b2 5.2 ;
|
||||||
|
|
||||||
|
constant boost_dependencies :
|
||||||
|
/boost/assert//boost_assert
|
||||||
|
/boost/config//boost_config
|
||||||
|
;
|
||||||
|
|
||||||
|
project /boost/throw_exception ;
|
||||||
|
|
||||||
|
explicit
|
||||||
|
[ alias boost_throw_exception : : : : <include>include <library>$(boost_dependencies) ]
|
||||||
|
[ alias all : boost_throw_exception test ]
|
||||||
|
;
|
||||||
|
|
||||||
|
call-if : boost-library throw_exception
|
||||||
|
;
|
@ -6,13 +6,19 @@
|
|||||||
# Distributed under the Boost Software License, Version 1.0. (See accompanying
|
# Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||||
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||||
|
|
||||||
|
require-b2 5.0.1 ;
|
||||||
import testing ;
|
import testing ;
|
||||||
|
import-search /boost/config/checks ;
|
||||||
|
import config : requires ;
|
||||||
|
|
||||||
local gcc-flags = -Wsign-promo -Wconversion -Wsign-conversion -Wshadow -Wundef ;
|
local gcc-flags = -Wsign-promo -Wconversion -Wsign-conversion -Wshadow -Wundef ;
|
||||||
|
|
||||||
project
|
project
|
||||||
: requirements
|
: requirements
|
||||||
|
|
||||||
|
<library>/boost/throw_exception//boost_throw_exception
|
||||||
|
<library>/boost/core//boost_core
|
||||||
|
|
||||||
<warnings>extra
|
<warnings>extra
|
||||||
|
|
||||||
<toolset>msvc:<warnings-as-errors>on
|
<toolset>msvc:<warnings-as-errors>on
|
||||||
@ -23,6 +29,8 @@ project
|
|||||||
<toolset>clang:<cxxflags>$(gcc-flags)
|
<toolset>clang:<cxxflags>$(gcc-flags)
|
||||||
;
|
;
|
||||||
|
|
||||||
|
local with-boost-exception = <use>/boost/exception//boost_exception [ requires cxx11_noexcept ] ;
|
||||||
|
|
||||||
run throw_exception_test.cpp ;
|
run throw_exception_test.cpp ;
|
||||||
run throw_exception_no_exceptions_test.cpp ;
|
run throw_exception_no_exceptions_test.cpp ;
|
||||||
run throw_exception_no_integration_test.cpp ;
|
run throw_exception_no_integration_test.cpp ;
|
||||||
@ -32,27 +40,32 @@ compile-fail throw_exception_fail.cpp
|
|||||||
: <warnings-as-errors>off ;
|
: <warnings-as-errors>off ;
|
||||||
|
|
||||||
run throw_exception_test2.cpp ;
|
run throw_exception_test2.cpp ;
|
||||||
run throw_exception_test3.cpp ;
|
run throw_exception_test3.cpp
|
||||||
run throw_exception_test4.cpp ;
|
: : : $(with-boost-exception) ;
|
||||||
run throw_exception_test5.cpp ;
|
run throw_exception_test4.cpp
|
||||||
|
: : : $(with-boost-exception) ;
|
||||||
|
run throw_exception_test5.cpp
|
||||||
|
: : : $(with-boost-exception) ;
|
||||||
|
|
||||||
lib lib1_throw : lib1_throw.cpp : <define>LIB1_SOURCE=1 <link>shared:<define>LIB1_DYN_LINK=1 : : <link>shared:<define>LIB1_DYN_LINK=1 ;
|
lib lib1_throw : lib1_throw.cpp : <define>LIB1_SOURCE=1 <link>shared:<define>LIB1_DYN_LINK=1 : : <link>shared:<define>LIB1_DYN_LINK=1 ;
|
||||||
lib lib2_throw : lib2_throw.cpp : <define>LIB2_SOURCE=1 <link>shared:<define>LIB2_DYN_LINK=1 : : <link>shared:<define>LIB2_DYN_LINK=1 ;
|
lib lib2_throw : lib2_throw.cpp : <define>LIB2_SOURCE=1 <link>shared:<define>LIB2_DYN_LINK=1 : : <link>shared:<define>LIB2_DYN_LINK=1 ;
|
||||||
lib lib3_throw : lib3_throw.cpp : <define>LIB3_SOURCE=1 <link>shared:<define>LIB3_DYN_LINK=1 : : <link>shared:<define>LIB3_DYN_LINK=1 ;
|
lib lib3_throw : lib3_throw.cpp : <define>LIB3_SOURCE=1 <link>shared:<define>LIB3_DYN_LINK=1 : : <link>shared:<define>LIB3_DYN_LINK=1 ;
|
||||||
lib lib4_throw : lib4_throw.cpp : <define>LIB4_SOURCE=1 <link>shared:<define>LIB4_DYN_LINK=1 : : <link>shared:<define>LIB4_DYN_LINK=1 ;
|
lib lib4_throw : lib4_throw.cpp : <define>LIB4_SOURCE=1 <link>shared:<define>LIB4_DYN_LINK=1 : : <link>shared:<define>LIB4_DYN_LINK=1 ;
|
||||||
|
|
||||||
run throw_from_library_test.cpp lib1_throw lib2_throw lib3_throw lib4_throw : : : <link>static : throw_from_library_static ;
|
run throw_from_library_test.cpp lib1_throw lib2_throw lib3_throw lib4_throw : : : $(with-boost-exception) <link>static : throw_from_library_static ;
|
||||||
run throw_from_library_test.cpp lib1_throw lib2_throw lib3_throw lib4_throw : : : <link>shared <target-os>darwin,<undefined-sanitizer>norecover:<build>no : throw_from_library_shared ;
|
run throw_from_library_test.cpp lib1_throw lib2_throw lib3_throw lib4_throw : : : $(with-boost-exception) <link>shared <target-os>darwin,<undefined-sanitizer>norecover:<build>no : throw_from_library_shared ;
|
||||||
|
|
||||||
run throw_exception_nx_test.cpp : : : <exception-handling>off ;
|
run throw_exception_nx_test.cpp : : : <exception-handling>off ;
|
||||||
run throw_exception_nx_test2.cpp : : : <exception-handling>off ;
|
run throw_exception_nx_test2.cpp : : : <exception-handling>off ;
|
||||||
run throw_exception_nx_test3.cpp : : : <exception-handling>off ;
|
run throw_exception_nx_test3.cpp : : : <exception-handling>off ;
|
||||||
|
|
||||||
run make_exception_ptr_test.cpp ;
|
run make_exception_ptr_test.cpp
|
||||||
run make_exception_ptr_test2.cpp ;
|
: : : $(with-boost-exception) ;
|
||||||
|
run make_exception_ptr_test2.cpp
|
||||||
|
: : : $(with-boost-exception) ;
|
||||||
|
|
||||||
run make_exception_ptr_nx_test.cpp : : : <exception-handling>off ;
|
run make_exception_ptr_nx_test.cpp : : : $(with-boost-exception) <exception-handling>off ;
|
||||||
run make_exception_ptr_nx_test2.cpp : : : <exception-handling>off ;
|
run make_exception_ptr_nx_test2.cpp : : : $(with-boost-exception) <exception-handling>off ;
|
||||||
|
|
||||||
run throw_with_location_test.cpp ;
|
run throw_with_location_test.cpp ;
|
||||||
run throw_with_location_test2.cpp ;
|
run throw_with_location_test2.cpp ;
|
||||||
|
Reference in New Issue
Block a user