Nigel Stewart
cd61c685eb
Ordered vector of group names to preserve order of groups ( #416 )
...
Co-authored-by: Nigel Stewart <nigel.stewart@emesent.io>
2024-01-15 20:52:54 +11:00
Alexander Galanin
ddc695ebac
Don't split by list delimiter in positional lists ( #398 )
2023-06-15 07:34:26 +10:00
Jarryd Beck
90b318105f
Fix unannoted fallthrough
...
Fixes #402 .
2023-06-15 07:18:30 +10:00
Maximilian Knespel
a526762eb8
[fix] Avoid std::regex initialization during dlopen ( #406 )
2023-05-31 07:26:34 +10:00
Nigel Stewart
16cc254919
Output same exception messages for both Linux and Windows ( #395 )
...
Co-authored-by: Nigel Stewart <nigel.stewart@emesent.io>
2023-04-03 17:15:01 +10:00
Jarryd Beck
120205ac5a
Fix cast warning in Unicode function
...
Fixes #339 . Fixes a sign conversion warning in a function compiled by
-DCXXOPTS_USE_UNICODE_HELP=1.
2023-03-15 07:09:09 +11:00
Demian Hespe
134f60f973
Fix noexcept warning ( #391 )
2023-02-20 07:25:13 +11:00
Jarryd Beck
eb787304d6
Fix version number
2023-02-16 07:02:16 +11:00
Martijn Courteaux
799ee0e3e8
Add <locale> to be spec-compliant for std::isalnum (didn't work on MSVC). ( #385 )
2023-02-11 15:47:48 +11:00
Jarryd Beck
e1f8c16702
Fix diagnostics pop error
2023-02-02 07:25:12 +11:00
Jarryd Beck
4a3d4dbfe0
Fixes #362 .
...
Fix comparing iterators from a different container.
2023-02-01 06:56:03 +11:00
Jarryd Beck
32afbc6526
Fix default bool values
...
Fixes #382 . Keep boolean values when parsing into a reference.
2022-12-15 07:08:03 +11:00
jarro2783
e9d20c2c07
Remove deprecated iterator type ( #381 )
...
Fixes #379 . `iterator` is deprecated in C++17.
2022-12-05 07:40:46 +11:00
Sourabh Mehta
1dcb44e79a
Fix an additional space in help generated ( #377 )
2022-11-10 07:24:19 +11:00
chrisps
f087dc8fcd
Code size reduction on msvc via selectany ( #373 )
2022-11-01 18:52:46 +11:00
Ryan Leary
2e3c6991d3
add . as valid char in option names ( #358 )
2022-09-29 07:11:32 +10:00
Stefan Hillmich
d046fe0ad6
Extend CI and small fixes ( #370 )
...
* Extend CI to support Windows and MacOS.
* Minor fixes to types.
2022-09-26 06:57:05 +10:00
Stefan Hillmich
82ac083886
Added missing #include ( #368 )
2022-09-12 07:02:26 +10:00
66maer
f7cf84bd56
Fix std::isblank assertion error in Visual Studio Chinese Debug ( #365 )
2022-09-08 07:33:31 +10:00
Jarryd Beck
ab1dc0f684
Update copyright notice
...
Fixes #361
2022-08-22 07:35:58 +10:00
jarro2783
a10bd5233b
Fix values attached to short options ( #360 )
...
Fixes #357 .
2022-08-13 07:51:41 +10:00
Jarryd Beck
17b2c91049
Fix iostream for no exceptions
...
Fixes #356 .
2022-08-08 07:07:59 +10:00
Jarryd Beck
96e72f7d15
Fix crash with short only option
2022-08-03 07:00:34 +10:00
Yassir Najmaoui
2abdd4af4d
Add option to display usage ( #355 )
...
Make the usage displaying optional
2022-07-28 06:50:13 +10:00
Jarryd Beck
01798ee7a0
GCC 4.8 fixes
2022-07-25 07:21:22 +10:00
Jarryd Beck
a6bfe2d457
Further ifdef fixes.
...
Related to #339 .
2022-07-20 20:57:27 +10:00
Jarryd Beck
83aecd628e
Fix pragmas
2022-07-20 17:37:37 +10:00
Jarryd Beck
6c8a41a229
Remove unused header
2022-07-20 07:51:04 +10:00
Jarryd Beck
292750d27a
Replace pragmas with macros
...
Fixes ##339
2022-07-20 07:49:59 +10:00
Jarryd Beck
8849551398
Fix #353 .
...
Move nodiscard before inline.
2022-07-18 21:16:04 +10:00
Eyal Rozenberg
e976f964c3
Fix issue #240 : Multiple long option names / aliases ( #349 )
...
* Fixes #240 : Multiple long option names / aliases
* We now use a vector of long option names instead of a single name
* When specifying an option, you can provide multiple names separated by commas, at most one of which may have a length of 1 (not necessarily the first specified name). The length-1 name is the single-hyphen switch (the "short name").
* Hashing uses the first long name
* Option help currently only uses the first long name.
2022-07-14 16:42:18 +10:00
Eyal Rozenberg
9cd015ac37
Regards #340 , #345 : Removed unnecessary indentation of exceptions namespace + added end-of-namespace comment ( #351 )
2022-07-13 06:49:04 +10:00
Eyal Rozenberg
628dc9202b
Fixes #345 , fixes #346 : Exception code tweaks ( #347 )
...
* Fixes #345 , fixes #346 , regards #340 : Put exceptions in a sub-namespace and renamed them accordingly.
* Also fixed some "loose ends" regarding namespace indentation which were missing in PR #350 .
* Dropped `required_option_missing` as it is unused.
2022-07-12 19:45:58 +10:00
Jarryd Beck
6bb1e82b61
Add Vim modeline
2022-07-11 07:17:53 +10:00
Eyal Rozenberg
513afbc6dc
Fixes #340 : namespace indentation unification ( #350 )
...
* Namespace no longer induce indentation
* Namespace opening brace now on same line as namespace name
* Namespace closing brace now has an empty line before it unless the namespace contents were short and with no empty lines
* Namespace closing brace now always followed by a comment with the closed namespace' name
2022-07-11 07:00:50 +10:00
Long Deng
c59e0c132c
Solve arguments() showing empty keys when only short-only option exists ( #318 )
...
* Solve `arguments()` showing empty keys when there is only a short option.
2022-05-11 17:44:25 +10:00
Jarryd Beck
8185e6bb3a
Remove unused variables
...
Fixes #324
2022-03-26 12:19:36 +11:00
Jarryd Beck
4e208b95b7
Add a program function
...
Fixes 323. Adds a function to retrieve the program name.
2022-01-14 16:26:48 +11:00
Long Deng
ad2d1a6b5f
Add iterator ( #126 ) and easily print-out ( #223 ) to ParseResult ( #313 )
...
* Add iterator (#126 ) and easily print-out (#223 ) to ParseResult
2021-11-09 18:49:58 +11:00
Jarryd Beck
c74846a891
Fix short options adding into unmatched
...
Fixes #312 .
2021-10-21 08:06:53 +11:00
Nick Krichevsky
4a02ad94f4
Include <optional> if possible to check if we can use the feature ( #309 )
...
Fixes #303
2021-10-10 13:01:47 +11:00
Jarryd Beck
c641241a87
Fixes to #204 .
2021-10-09 17:02:27 +11:00
Baojun Wang
4b7fccb5f2
Allow empty string to be valid positional arguments
...
Fixes #204 .
2021-10-09 17:02:27 +11:00
Jarryd Beck
df229cff0d
Fix integer parsing to be more general
...
Fixes #277 . Makes integer parsing to be more general and allow whatever
types the user actually uses instead of hard coding a set of integers.
2021-06-02 17:30:08 +10:00
Jarryd Beck
a20bda6179
Fix GCC version check for null deref
...
Fixes #288 .
2021-06-01 17:38:41 +10:00
RonxBulld
97a4d5511f
Support options like -j5
. ( #286 )
...
* Support option value being attached after the option without a space in between. e.g. -j5
2021-05-06 08:46:40 +10:00
spmn
056a6281ac
Fix empty option name in OptionException
( #256 )
...
Fix bug where option name is missing in error.
2021-05-06 08:45:15 +10:00
RonxBulld
c04f8a5bb9
Fully compatible with GCC4.8 compilation system. ( #285 )
...
* -Wsuggest-override is not supported by gcc before 5.0
* GCC prior to 5.0 should ignore not only -Wnon-virtual-dtor but also -Weffc++, otherwise non-virtual destructor problems will still be reported.
* The `#pragma GCC diagnostic push' should be used before setting up the temporary environment.
* When using GCC4.8, use manual lexical analysis instead of regular expressions.
* Add gcc4.8 stuff to travis file.
2021-05-04 17:35:45 +10:00
RonxBulld
174510285a
-Wsuggest-override is not supported by gcc before 5.0 ( #283 )
...
* -Wsuggest-override is not supported by gcc before 5.0
* GCC prior to 5.0 should ignore not only -Wnon-virtual-dtor but also -Weffc++, otherwise non-virtual destructor problems will still be reported.
* The `#pragma GCC diagnostic push' should be used before setting up the temporary environment.
2021-04-21 18:17:30 +10:00
Jarryd Beck
aaa5e790b6
Rename variable, add to example
2021-02-15 08:34:46 +11:00