# Json.h error: ‘class std::\_\_debug::set\<label\>’ has no member named ‘emplace’

**URL:** https://discourse.cataclysmdda.org/t/json-h-error-class-std-debug-set-label-has-no-member-named-emplace/8943
**Category:** The Garage
**Created:** [February 19, 2015, 6:35am UTC](https://discourse.cataclysmdda.org/t/json-h-error-class-std-debug-set-label-has-no-member-named-emplace/8943 "2015-02-19T06:35:41Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![v.v.b](https://avatars.discourse-cdn.com/v4/letter/v/a88e4f/32.png) [@v.v.b](https://discourse.cataclysmdda.org/u/v.v.b)
#### Post date: [February 19, 2015, 6:35am UTC](https://discourse.cataclysmdda.org/t/json-h-error-class-std-debug-set-label-has-no-member-named-emplace/8943/1 "2015-02-19T06:35:41Z")

</div>

Can’t compile current git version for two days.  
It says:

```auto
g++ -DLOCALIZE -Wall -Wextra -g -D_GLIBCXX_DEBUG --std=c++11 -MMD -I/usr/include/ncursesw -c src/savegame_json.cpp -o obj/savegame_json.o
In file included from src/pldata.h:4:0,
                 from src/creature.h:5,
                 from src/character.h:4,
                 from src/player.h:4,
                 from src/savegame_json.cpp:1:
src/json.h: In instantiation of ‘bool JsonIn::read(T&) [with T = std::__debug::set<std::basic_string<char> >; typename std::enable_if<std::is_same<typename T::key_type, typename T::value_type>::value>::type* <anonymous> = 0u]’:
src/json.h:594:32: required from ‘bool JsonObject::read(const string&, T&) [with T = std::__debug::set<std::basic_string<char> >; std::string = std::basic_string<char>]’
src/savegame_json.cpp:1090:37: required from here
src/json.h:268:25: error: ‘class std::__debug::set<std::basic_string<char> >’ has no member named ‘emplace’
src/json.h: In instantiation of ‘bool JsonIn::read(T&) [with T = std::__debug::set<label>; typename std::enable_if<std::is_same<typename T::key_type, typename T::value_type>::value>::type* <anonymous> = 0u]’:
src/json.h:594:32: required from ‘bool JsonObject::read(const string&, T&) [with T = std::__debug::set<label>; std::string = std::basic_string<char>]’
src/savegame_json.cpp:1351:31: required from here
src/json.h:268:25: error: ‘class std::__debug::set<label>’ has no member named ‘emplace’
Makefile:430: recipe for target 'obj/savegame_json.o' failed
make: *** [obj/savegame_json.o] Error 1
```

---

<div class="post-metadata">

### Author: ![Rivet](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/rivet/32/11_2.png) [@Rivet](https://discourse.cataclysmdda.org/u/Rivet)
#### Post date: [February 19, 2015, 7:03am UTC](https://discourse.cataclysmdda.org/t/json-h-error-class-std-debug-set-label-has-no-member-named-emplace/8943/2 "2015-02-19T07:03:55Z")

</div>

Yep, that’s a known issue and a [0.C blocker](https://github.com/CleverRaven/Cataclysm-DDA/issues/11293).

---

<div class="post-metadata">

### Author: ![Brandon\_K](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.cataclysmdda.org/brandon_k/32/1174_2.png) [@Brandon\_K](https://discourse.cataclysmdda.org/u/Brandon_K)
#### Post date: [February 19, 2015, 10:43am UTC](https://discourse.cataclysmdda.org/t/json-h-error-class-std-debug-set-label-has-no-member-named-emplace/8943/3 "2015-02-19T10:43:37Z")

</div>

There’s a fix in a PR ready. You could also fix it by getting a version of GCC \>= 4.8.
