Comments (8)
Can you paste the errors aye?
from json.h.
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z22json_hexadecimal_digitc':| c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\include\c++\bits\char_traits.h|262|multiple definition of
.weak.__Z22json_hexadecimal_digitc.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:c:\program files (x86)\codeblocks\mingw\bin..\lib\gcc\mingw32\4.4.1\include\c++\new|101|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z22json_hexadecimal_valuePKcmPm':| F:\demo\project\source\engine\middleware\json.h|478|multiple definition of
.weak.__Z22json_hexadecimal_valuePKcmPm.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|478|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z20json_skip_whitespaceP18json_parse_state_s':| F:\demo\project\source\engine\middleware\json.h|499|multiple definition of
.weak.__Z20json_skip_whitespaceP18json_parse_state_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|499|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z26json_skip_c_style_commentsP18json_parse_state_s':| F:\demo\project\source\engine\middleware\json.h|545|multiple definition of
.weak.__Z26json_skip_c_style_commentsP18json_parse_state_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|545|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z24json_skip_all_skippablesP18json_parse_state_s':| F:\demo\project\source\engine\middleware\json.h|608|multiple definition of
.weak.__Z24json_skip_all_skippablesP18json_parse_state_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|608|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z20json_get_string_sizeP18json_parse_state_sj':| F:\demo\project\source\engine\middleware\json.h|659|multiple definition of
.weak.__Z20json_get_string_sizeP18json_parse_state_sj.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|659|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z26is_valid_unquoted_key_charc':| F:\demo\project\source\engine\middleware\json.h|840|multiple definition of
.weak.__Z26is_valid_unquoted_key_charc.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|840|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z17json_get_key_sizeP18json_parse_state_s':| F:\demo\project\source\engine\middleware\json.h|846|multiple definition of
.weak.__Z17json_get_key_sizeP18json_parse_state_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|846|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z20json_get_object_sizeP18json_parse_state_si':| F:\demo\project\source\engine\middleware\json.h|895|multiple definition of
.weak.__Z20json_get_object_sizeP18json_parse_state_si.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|895|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z19json_get_array_sizeP18json_parse_state_s':| F:\demo\project\source\engine\middleware\json.h|1031|multiple definition of
.weak.__Z19json_get_array_sizeP18json_parse_state_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1031|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z20json_get_number_sizeP18json_parse_state_s':| F:\demo\project\source\engine\middleware\json.h|1104|multiple definition of
.weak.__Z20json_get_number_sizeP18json_parse_state_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1104|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z19json_get_value_sizeP18json_parse_state_si':| F:\demo\project\source\engine\middleware\json.h|1303|multiple definition of
.weak.__Z19json_get_value_sizeP18json_parse_state_si.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1303|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z17json_parse_stringP18json_parse_state_sP13json_string_s':| F:\demo\project\source\engine\middleware\json.h|1414|multiple definition of
.weak.__Z17json_parse_stringP18json_parse_state_sP13json_string_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1414|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z14json_parse_keyP18json_parse_state_sP13json_string_s':| F:\demo\project\source\engine\middleware\json.h|1546|multiple definition of
.weak.__Z14json_parse_keyP18json_parse_state_sP13json_string_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1546|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z17json_parse_objectP18json_parse_state_siP13json_object_s':| F:\demo\project\source\engine\middleware\json.h|1587|multiple definition of
.weak.__Z17json_parse_objectP18json_parse_state_siP13json_object_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1587|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z16json_parse_arrayP18json_parse_state_sP12json_array_s':| F:\demo\project\source\engine\middleware\json.h|1724|multiple definition of
.weak.__Z16json_parse_arrayP18json_parse_state_sP12json_array_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1724|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z17json_parse_numberP18json_parse_state_sP13json_number_s':| F:\demo\project\source\engine\middleware\json.h|1814|multiple definition of
.weak.__Z17json_parse_numberP18json_parse_state_sP13json_number_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1814|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z16json_parse_valueP18json_parse_state_siP12json_value_s':| F:\demo\project\source\engine\middleware\json.h|1908|multiple definition of
.weak.__Z16json_parse_valueP18json_parse_state_siP12json_value_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|1908|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function json_parse_ex':| F:\demo\project\source\engine\middleware\json.h|2010|multiple definition of
.weak._json_parse_ex.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|2010|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function json_parse':| F:\demo\project\source\engine\middleware\json.h|2119|multiple definition of
.weak._json_parse.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|2119|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function json_extract_value':| F:\demo\project\source\engine\middleware\json.h|2129|multiple definition of
.weak._json_extract_value.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|2129|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z28json_extract_get_number_sizePK13json_number_s':| F:\demo\project\source\engine\middleware\json.h|2145|multiple definition of
.weak.__Z28json_extract_get_number_sizePK13json_number_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|2145|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z28json_extract_get_string_sizePK13json_string_s':| F:\demo\project\source\engine\middleware\json.h|2153|multiple definition of
.weak.__Z28json_extract_get_string_sizePK13json_string_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|2153|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z28json_extract_get_object_sizePK13json_object_s':| F:\demo\project\source\engine\middleware\json.h|2161|multiple definition of
.weak.__Z28json_extract_get_object_sizePK13json_object_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|2161|first defined here|
obj\Debug\source\engine\SpritesheetParseJSON.o||In function Z27json_extract_get_array_sizePK12json_array_s':| F:\demo\project\source\engine\middleware\json.h|2189|multiple definition of
.weak.__Z27json_extract_get_array_sizePK12json_array_s.__ZNSt11char_traitsIcE6lengthEPKc'|
obj\Debug\source\engine\EntityParseJSON.o:F:\demo\project\source\engine\ecs..\middleware\json.h|2189|first defined here|
from json.h.
Ah are you using MinGW on Windows? It might be that I just don't support that, its not a tested codepath at least.
from json.h.
Correct. Would you have an idea what the time investment might be to add that as a path?
I might be inclined to assist with this
from json.h.
Honestly don't know what it would take to support it. Not sure if it is testable in GitHub actions for a starter (will go have a nosey).
from json.h.
Gotcha. Yeah all the errors seem to pertain to usage of char_traits, but not sure why that would be an issue. Thx for looking into this
from json.h.
Don't want to add MinGW as a supported platform, nor add it to testing. Happy to accept patches that would make it work (you can see one of my other libraries has some MinGW support in it, but I don't officially support it https://github.com/sheredom/utest.h/blob/master/utest.h#L107).
from json.h.
Understood. After some contemplation I've decided I'll probably just write a wrapper around it, so there's only a solitary include. And ultimately I don't think we have need of JSON parsing in release builds, and/or may even ditch MinGW for MSVC in the end.
Will have a look at the project you linked though. Thx again
from json.h.
Related Issues (20)
- Convert a json object into json string HOT 2
- Stack Overflow in json_get_value_size() HOT 2
- Test Case: json_write_pretty() with json string \u012b writes garbage HOT 3
- Minor overflow in json_skip_whitespace HOT 1
- json.h under TrustInSoft CI HOT 5
- Iterate over array linked list HOT 1
- Helping Parsing Array Json HOT 2
- [Feature Request] Lookup value via given key HOT 2
- Buffer overflow in json_skip_whitespace HOT 5
- Buffer overflow in json_get_number_size HOT 3
- Buffer overflow in json_skip_c_style_comments
- Heap buffer overflow in json_parse_value when use json_parse_flags_allow_inf_and_nan HOT 1
- Heap buffer overflow in json_parse_array HOT 1
- Heap Overflow in json_parse_string() HOT 2
- Heap Overflow in json_parse_object()
- Heap Overflow in json_parse_value()
- Heap Overflow in json_parse_number()
- Heap Overflow in json_parse_key()
- Another Heap OOB in json_parse_object()
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from json.h.