-
-
Notifications
You must be signed in to change notification settings - Fork 7.3k
Copy constructor changes semantics #5074
Copy link
Copy link
Open
Labels
kind: bugsolution: wontfixthe issue will not be fixed (either it is impossible or deemed out of scope)the issue will not be fixed (either it is impossible or deemed out of scope)
Description
Description
As far as I know, this was a known issue on gcc, but clang was OK, but this is now in clang 20. Using {} to construct the object adds an array around an original disctionary. This is IMHO a critical bug and now that gcc and clang are displaying this behavior, it should be fixed.
Reproduction steps
Just do
void Object::method(Json json)
call it with a dictionary, the new json object is now wrapped in an array.
Expected vs. actual results
The new object should not be wrapped in an array
Minimal code example
`void Object::method(Json json)`Error messages
Compiler and operating system
clang 20, RH8
Library version
3.12
Validation
- The bug also occurs if the latest version from the
developbranch is used. - I can successfully compile and run the unit tests.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
kind: bugsolution: wontfixthe issue will not be fixed (either it is impossible or deemed out of scope)the issue will not be fixed (either it is impossible or deemed out of scope)