1094 Commits

Author SHA1 Message Date
Jeff Trull 74b1ef6609 Summarize changes in Boost 1.92 2026-06-23 22:28:41 -07:00
Jeff Trull ac7193dd34 Work around GHA node20 deprecation as boost-ci does, for now 2026-06-22 20:15:14 -07:00
Jeff Trull 32f79832f2 Update to new(er) macos build following boost-ci 2026-06-22 17:43:09 -07:00
Alexander Grund be06f5ad18 Enable adding Ubuntu toolchain PPA by default
The default in Boost.CI will be false but some jobs still rely on this, so keep it for now the default.
2026-05-06 12:28:40 -07:00
Jeff Trull 2eeda24c6d Copy latest AppVeyor script from boost-ci and adjust to match 2026-05-06 12:28:40 -07:00
Jeff Trull ee5bfe517f Fix slex and lexertl example token counts for MSVC
The non-MS-extension case was updated correctly but this was missed
until Appveyor CI
2026-05-06 12:28:40 -07:00
sortA a0691e6172 Correct the username in the copyright notice 2026-05-06 12:28:40 -07:00
Rac 96e5788a45 fix: avoid accepting directories as include files 2026-05-06 12:28:40 -07:00
Rac b5af804078 fix: revise copyright notice 2026-05-06 12:28:40 -07:00
Rac 87ae95cbb2 fix(macromap): correct return value in expand_predefined_macro 2026-05-06 12:28:40 -07:00
Andrey Semashev b337fc8685 Remove dependencies on Boost.StaticAssert.
Boost.StaticAssert has been merged into Boost.Config, so remove
the dependency.
2026-05-06 12:28:40 -07:00
Jeff Trull ec47ccf100 Implement support for digit separators in preprocessor expressions
Integers with digit separators are already recognized as literal
tokens. This commit adds proper interpretation of them as integers for
use in expressions e.g. with #if
2026-05-06 12:28:40 -07:00
Jeff Trull 147b685795 Introduce c++23 feature flag and condition size_t literals with it 2026-05-06 12:28:40 -07:00
Jeff Trull 453493e640 Tweak PR #241 for correctness and tidy code
- Fix RE2C code for numbers (binary and digit separators)
- Revert to RE2C version 1.0.2, for now
- Revamp token ids to minimize changes
- Restore existing and more accurate name OPTSIGN in slex
- Add binary literal support to lexertl
- Fix xlex support for size_t literals
- Add test tokens for octal, binary, and hex literals
2026-05-06 12:28:40 -07:00
Andreas Pokorny f776d2ed40 fix(lexer): support size_t literal, separator chars, 'module'
The integer parsing grammars still have to be updated.
2026-05-06 12:28:40 -07:00
Jeff Trull d7aa5a369d Merge pull request #238 from boostorg/develop
merge contributions from earlier in 2025
boost-1.91.0.beta1 boost-1.91.0 boost-1.90.0.beta1 boost-1.90.0 boost-1.89.0
2025-04-28 13:47:01 -07:00
Jeff Trull 87cda50b58 Merge pull request #239 from Flamefire/patch-1
GHA: Use Ubuntu 24.04 for clang test
2025-04-25 19:19:59 -07:00
Alexander Grund c8fe261da8 GHA: Use Ubuntu 24.04 for clang test
GitHub removes the Ubuntu 20 runners

As the Clang version doesn't seem to matter just update to the latest OS
2025-04-25 15:52:51 +02:00
Jeff Trull 7e3c72dfe2 Merge pull request #236 from Lastique/patch-1
Avoid including deprecated atomic_count.hpp header
2025-03-01 06:38:32 -08:00
Andrey Semashev 27392d2cc1 Avoid including deprecated header.
`boost/detail/atomic_count.hpp` was moved to `boost/smart_ptr/detail` and the old header is deprecated and emits warnings.
2025-02-28 23:23:36 +03:00
Jeff Trull 1d71704e95 Merge pull request #234 from Flamefire/unused
Suppress unused parameter warnings
2024-12-10 06:46:50 -08:00
Alexander Grund b45951ccb3 Suppress unused parameter warnings 2024-12-10 09:57:13 +01:00
Jeff Trull 2891b2f470 Merge pull request #235 from Flamefire/ci
Fix Github Actions
2024-12-09 14:50:22 -08:00
Alexander Grund 9f8ebdf8ce Fix Github Actions 2024-12-06 17:28:33 +01:00
Jeff Trull 021cee7348 Merge pull request #231 from boostorg/develop
Updates for 1.87
boost-1.87.0 boost-1.88.0.beta1 boost-1.88.0 boost-1.87.0.beta1
2024-10-30 23:39:15 -07:00
Jeff Trull d4c15cf3d8 Update ChangeLog for 1.87 release (#229) 2024-10-30 21:47:47 -07:00
njnobles ffdc3419a3 Emit line directives for includes with directive on first line (#223)
* Emit line directives for includes with directive on first line
* Add nested include tests

Thanks to Nick Nobles for this bug report and fix
2024-10-03 12:49:37 -07:00
Peter Dimov f6ffdfe0a3 Avoid inclusion of deprecated header (#227) 2024-09-29 08:37:21 -07:00
jwnhy ef14767aec Fix empty stringify under C++20 (#221)
* fix segment fault of empty stringify under C++20
* Add tests for optional comma in variadic macro call

---------

Co-authored-by: Jeff Trull <edaskel@att.net>
2024-09-15 14:42:33 +10:00
René Ferdinand Rivera Morell 7ce8b53d9d Add support for modular build structure. (#214)
* Make the library modular usable.

* Switch to library requirements instead of source. As source puts extra source in install targets.

* Add wave tool build to all target.

* Add missing NO_LIB usage requirements.

* Add requires-b2 check to top-level build file.

* Bump B2 require to 5.2

* Change all <source> references to <library>.

* Move inter-lib dependencies to a project variable and into the build targets.

* Update build deps.
2024-08-26 22:01:03 -07:00
Jeff Trull 0e7388b8ae Merge pull request #217 from jefftrull/ci-pin-node16
Use only node16 in CI to work around glibc version mismatch with node20 in old containers
2024-08-26 21:48:52 -07:00
Jeff Trull 8b62268ddd Use only node16 in CI
To test against different compiler versions we use older Docker
images, which in turn have different glibc versions. Github recently
deprecated Node version 16, which had been built with an older glibc
version, and the newer Node version requires a glibc version that is
not available on the old images, causing builds to fail.

This is a hack permitting the continued use of Node 16, until Github
decides to make it impossible.
2024-08-26 20:56:32 -07:00
Jeff Trull 13a8e179ce Merge pull request #213 from boostorg/develop
Changes for 1.86
boost-1.86.0.beta1 boost-1.86.0
2024-06-26 20:41:32 -07:00
Jeff Trull 46bd710ada Merge pull request #212 from jefftrull/changelog_1.86
Update ChangeLog for 1.86
2024-06-25 22:03:12 -07:00
Jeff Trull 3819adaea3 Update ChangeLog for 1.86 2024-06-25 22:02:08 -07:00
Jeff Trull da98931899 Merge pull request #207 from jefftrull/bugfix/ub-signed-overflow
Fix checks for signed overflow
2024-06-25 21:53:44 -07:00
Jeff Trull 8f1052cda3 Merge pull request #211 from jefftrull/bugfix/vsnprintf
Use the safer vsnprintf, instead of vsprintf
2024-06-25 21:52:52 -07:00
Jeff Trull 7265c575a8 Use vsnprintf instead of vsprintf
Issue noted by MSVC (as a warning)
2024-06-25 16:31:13 -07:00
Jeff Trull df2125a1bd Repair Overflow Checks
The previous code checked for signed overflow on +, -, and * by doing
the operation and checking the result, which can invoke undefined
behavior. This replaces that code with initial tests on the operands.

In addition, a test for the sole integer division overflow case (that
is not division by zero) was missing: INT_MIN / -1
It has now been added, along with a test case.
2024-06-25 15:00:02 -07:00
Jeff Trull c11757decf Merge pull request #209 from boostorg/develop
Merge 1.85 fixes
boost-1.85.0
2024-03-31 22:22:26 -07:00
Jeff Trull 8f22cdccb5 Update ChangeLog for 1.85 (#208) 2024-03-31 19:44:44 -07:00
chisolm 737c1e07ee Update marker before and after fill() operation in cpplexer (#203)
* Update marker before and after fill() operation in cpplexer

* A basic test case for trigraph "pound" (octothorpe) on fill boundary (detects the marker issue)

This change resolves #202 

---------

Co-authored-by: Chris Chisolm <chris_chisolm@intuit.com>
Co-authored-by: Jeff Trull <edaskel@att.net>
2024-01-30 10:16:07 -08:00
Jeff Trull ff13dee917 Fixes for escaped newline handling (#205)
* Check for backslash characters before the start of the new data

With BOOST_WAVE_BSIZE set to 40, test t_5_002 fails because a newline appears exactly at the beginning of a newly
fetched buffer, and a backslash is at the end of the previous one. In that case the escaped newline
was not detected. This change will also consider three unprocessed bytes of input data, if available,
prior to the new data, which is enough to detect a trigraph backslash.

* Improve data range check for backslash newline

The existing check considered the space required for a trigraph backslash, but not for the following LF (or CRLF) before testing for them. With BOOST_WAVE_BSIZE set to 98 this caused a segfault in t_5_001.
2024-01-29 16:57:04 -08:00
Jeff Trull f9c302da5b Use correct string constructor for non-null-terminated range (#204)
There is no guarantee (indeed, it is unlikely) that data within the
scanner buffer will be null terminated, and so the constructor that
accepts a pointer and a count is appropriate.
2024-01-28 18:24:18 -08:00
Jeff Trull 543a0e9e1d Restore previous newline output after pragma (#201)
This line was inadvertently removed in 1.84 as part of another bug
fix. This change restores it and improves the associated unit test.
2024-01-17 19:09:53 -08:00
Jeff Trull ccec592137 Upgrade stale CI config (#199)
* Update runner OS options so all jobs execute

* Add C++20 to matrix

* Add gcc-9 and msvc-14.3 (via Appveyor) to matrix
2024-01-17 11:43:50 -08:00
Jeff Trull 6f4d8f7cbe Merge pull request #198 from jefftrull/bugfix/more-fs-deprecation-removal
Handle some previously deprecated, now removed, filesystem code
2024-01-14 22:15:11 -08:00
Jeff Trull d8474c3e2d Handle some previously deprecated, now removed, filesystem code
- convenience.hpp is removed
- no_push and branch_path are removed
2024-01-14 15:06:47 -08:00
Jeff Trull e02cda69e4 Merge pull request #194 from boostorg/develop
Changes for 1.84
boost-1.84.0 boost-1.85.0.beta1 boost-1.84.0.beta1
2023-10-25 17:27:45 -07:00
Jeff Trull abe718abf4 Merge pull request #193 from jefftrull/boost-1.84-changelog
Update Changelog for 1.84 to reflect one fixed bug
2023-10-25 15:39:28 -07:00