diff options
| Commit | 043fd2d2e544537a9634a1f0bf591bf1ba8a01d9 (patch) | |
|---|---|---|
| Author | 2021-09-13 23:19:50 +0300 | |
| Committer | 2021-09-14 22:18:05 +0300 | |
| Files | 0b06ca0450df116fc007fa21a0d1ee7b3cf8cea5 | |
| IPL-043fd2d2e544537a9634a1f0bf591bf1ba8a01d9.tar IPL-043fd2d2e544537a9634a1f0bf591bf1ba8a01d9.tar.gz IPL-043fd2d2e544537a9634a1f0bf591bf1ba8a01d9.zip | ||
| Parent | 4deec0ce53bf6475c3ed8fc70d1cd17d31afb705 (diff) | |
Fix build with Visual Studio
4 files changed, 8 insertions, 5 deletions
| -rw-r--r-- | gctest/genie.lua | 3 | ||||
| -rw-r--r-- | gctest/main.cpp | 7 | ||||
| -rw-r--r-- | gctest/minitrace.cpp | 1 | ||||
| -rw-r--r-- | gctest/minitrace/minitrace.c | 2 |
diff --git a/gctest/genie.lua b/gctest/genie.lua index a1f17f7..5ebdb84 100644 --- a/gctest/genie.lua +++ b/gctest/genie.lua @@ -13,6 +13,7 @@ solution 'gctest' }
defines {
'_SCL_SECURE_NO_WARNINGS',
+ '_CRT_SECURE_NO_WARNINGS',
'MTR_ENABLED',
}
@@ -37,7 +38,9 @@ solution 'gctest' language 'C++'
files {
'main.cpp',
+ 'minitrace.cpp',
}
+ removeflags 'ExtraWarnings'
project 'leak_gc'
kind 'ConsoleApp'
diff --git a/gctest/main.cpp b/gctest/main.cpp index d28ca09..dd9a137 100644 --- a/gctest/main.cpp +++ b/gctest/main.cpp @@ -8,7 +8,6 @@ #include <string>
#include "weighted_action.h"
-#include "minitrace/minitrace.c"
#include "minitrace/minitrace.h"
#include "gc.h"
@@ -38,7 +37,7 @@ class LeafObject : public RecycledObject public:
LeafObject(unsigned size) : m_Size(size)
{
- std::fill(m_Extra, m_Extra + size, 0xab);
+ std::fill(m_Extra, m_Extra + size, uint8_t(0xab));
}
~LeafObject() {}
@@ -173,7 +172,7 @@ struct SizeDistribution template <typename G>
unsigned operator()(G& g) const
{
- auto r = m_Dist(g);
+ auto r = unsigned(m_Dist(g));
return (m_Min < r) ? (r < m_Max ? r : m_Max) : m_Min;
}
@@ -385,7 +384,7 @@ int main(int argc, char* argv[]) if (RecycledObject::Alive)
{
std::fprintf(stderr, "%lld objects leaked\n",
- (size_t)RecycledObject::Alive);
+ (uint64_t)RecycledObject::Alive);
}
mtr_shutdown();
diff --git a/gctest/minitrace.cpp b/gctest/minitrace.cpp new file mode 100644 index 0000000..4b96ae6 --- /dev/null +++ b/gctest/minitrace.cpp @@ -0,0 +1 @@ +#include "minitrace/minitrace.c"
diff --git a/gctest/minitrace/minitrace.c b/gctest/minitrace/minitrace.c index 3d8e7fd..d0cec8f 100644 --- a/gctest/minitrace/minitrace.c +++ b/gctest/minitrace/minitrace.c @@ -472,7 +472,7 @@ void internal_mtr_raw_event_arg(const char *category, const char *name, char ph, switch (arg_type) { case MTR_ARG_TYPE_INT: ev->a_int = (int)(uintptr_t)arg_value; break; case MTR_ARG_TYPE_STRING_CONST: ev->a_str = (const char*)arg_value; break; - case MTR_ARG_TYPE_STRING_COPY: ev->a_str = strdup((const char*)arg_value); break; + case MTR_ARG_TYPE_STRING_COPY: ev->a_str = _strdup((const char*)arg_value); break; case MTR_ARG_TYPE_NONE: break; } |
