History

Final build issues from Mac (i.e. XCode)

arr committed 9 years ago

Commit 8d11a421 parent b0ff2264 files · +13 −9Browse files

Unified · Split

4 files
  1. src/asm/sbl_reader.cpp +6 −6
  2. src/include/builtin_module.h +1 −1
  3. src/include/vm_asm_sigkind.h +2 −2
  4. src/vm/thread.cpp +4 −0
src/asm/sbl_reader.cpp+6−6
@@ -125,7 +125,7 @@ namespace · 124 unmodified lines
125 const std::string &type_table_t::resolve_table_index<std::string>(int32_t idx) const125 const std::string &type_table_t::resolve_table_index<std::string>(int32_t idx) const
126 {126 {
127 const auto idx_local = idx & ~string_table_mask;127 const auto idx_local = idx & ~string_table_mask;
128 if (0 > idx_local || idx_local >= strings_table.size())128 if (idx_local >= strings_table.size())
129 throw std::out_of_range{ "Invalid string table index" };129 throw std::out_of_range{ "Invalid string table index" };
130 130
131 return strings_table[idx_local];131 return strings_table[idx_local];
@@ -137,7 +137,7 @@ namespace · 5 unmodified lines
137 if ((static_cast<uint32_t>(idx) & inner_type_table_mask) != 0)137 if ((static_cast<uint32_t>(idx) & inner_type_table_mask) != 0)
138 {138 {
139 const auto idx_local = idx & ~inner_type_table_mask;139 const auto idx_local = idx & ~inner_type_table_mask;
140 if (0 > idx_local || idx_local >= inner_type_table.size())140 if (idx_local >= inner_type_table.size())
141 throw std::out_of_range{ "Invalid inner type table index" };141 throw std::out_of_range{ "Invalid inner type table index" };
142 142
143 return inner_type_table[idx_local];143 return inner_type_table[idx_local];
@@ -155,7 +155,7 @@ namespace · 11 unmodified lines
155 const source_ref_t &type_table_t::resolve_table_index<source_ref_t>(int32_t idx) const155 const source_ref_t &type_table_t::resolve_table_index<source_ref_t>(int32_t idx) const
156 {156 {
157 const auto idx_local = idx & ~source_table_mask;157 const auto idx_local = idx & ~source_table_mask;
158 if (0 > idx_local || idx_local >= source_table.size())158 if (idx_local >= source_table.size())
159 throw std::out_of_range{ "Invalid source table index" };159 throw std::out_of_range{ "Invalid source table index" };
160 160
161 return source_table[idx_local];161 return source_table[idx_local];
@@ -165,7 +165,7 @@ namespace · 3 unmodified lines
165 const name_source_size_t &type_table_t::resolve_table_index<name_source_size_t>(int32_t idx) const165 const name_source_size_t &type_table_t::resolve_table_index<name_source_size_t>(int32_t idx) const
166 {166 {
167 const auto idx_local = idx & ~adt_table_mask;167 const auto idx_local = idx & ~adt_table_mask;
168 if (0 > idx_local || idx_local >= adt_table.size())168 if (idx_local >= adt_table.size())
169 throw std::out_of_range{ "Invalid adt table index" };169 throw std::out_of_range{ "Invalid adt table index" };
170 170
171 return adt_table[idx_local];171 return adt_table[idx_local];
@@ -175,9 +175,9 @@ namespace · 3 unmodified lines
175 const tuple_item_t &type_table_t::resolve_table_index<tuple_item_t>(int32_t idx) const175 const tuple_item_t &type_table_t::resolve_table_index<tuple_item_t>(int32_t idx) const
176 {176 {
177 const auto idx_local = idx & ~tuple_type_mask;177 const auto idx_local = idx & ~tuple_type_mask;
178 if (0 > idx_local || idx_local >= tuple_table.size())178 if (idx_local >= tuple_table.size())
179 throw std::out_of_range{ "Invalid tuple table index" };179 throw std::out_of_range{ "Invalid tuple table index" };
180 180
181 return tuple_table[idx_local];181 return tuple_table[idx_local];
182 }182 }
183 183
src/include/builtin_module.h+1−1
@@ -28,7 +28,7 @@ namespace disvm · 27 unmodified lines
28 struct vm_runtab_t28 struct vm_runtab_t
29 {29 {
30 // Function identification30 // Function identification
31 char *name;31 const char *name;
32 uint32_t sig;32 uint32_t sig;
33 33
34 // Function pointer34 // Function pointer
src/include/vm_asm_sigkind.h+2−2
@@ -254,7 +254,7 @@ namespace disvm · 253 unmodified lines
254 class Tadt_pick_tag final : public Tbasic_type<type_id_t::adt_pick_tag>254 class Tadt_pick_tag final : public Tbasic_type<type_id_t::adt_pick_tag>
255 {255 {
256 public: // static256 public: // static
257 static constexpr char *tag_delim();257 static constexpr const char *tag_delim();
258 static constexpr char begin();258 static constexpr char begin();
259 static constexpr char end();259 static constexpr char end();
260 260
@@ -267,7 +267,7 @@ namespace disvm · 6 unmodified lines
267 Tadt_pick_tag(sig_stream_t &s) : _s{ std::move(s) } { }267 Tadt_pick_tag(sig_stream_t &s) : _s{ std::move(s) } { }
268 };268 };
269 269
270 constexpr char *Tadt_pick_tag::tag_delim() { return "=>"; }270 constexpr const char *Tadt_pick_tag::tag_delim() { return "=>"; }
271 constexpr char Tadt_pick_tag::begin() { return '('; }271 constexpr char Tadt_pick_tag::begin() { return '('; }
272 constexpr char Tadt_pick_tag::end() { return ')'; }272 constexpr char Tadt_pick_tag::end() { return ')'; }
273 273
src/vm/thread.cpp+4−0
@@ -290,6 +290,10 @@ vm_thread_state_t vm_thread_t::execute(vm_t &vm, const uint32_t quanta) · 289 unmodified lines
290 if (tool_dispatch != nullptr)290 if (tool_dispatch != nullptr)
291 tool_dispatch->on_thread_broken(*this);291 tool_dispatch->on_thread_broken(*this);
292 break;292 break;
293
294 default:
295 // Let other thread states fall through
296 break;
293 }297 }
294 298
295 return _registers.current_thread_state;299 return _registers.current_thread_state;