diff options
author | Juan M Gómez <info@jmgomez.me> | 2024-08-12 17:10:17 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-12 18:10:17 +0200 |
commit | 630c304a2dff6be70717224e533c1ad6f01875e3 (patch) | |
tree | 506cb15d13e8b840ea450c2972a9781d8ad36708 | |
parent | 0c890ff9a70258af8231967229b891df9731a5df (diff) | |
download | Nim-630c304a2dff6be70717224e533c1ad6f01875e3.tar.gz |
Adds `SEQ_DECL_SIZE 1` back under `clang` and a test (#23942)
-rw-r--r-- | lib/nimbase.h | 4 | ||||
-rw-r--r-- | tests/cpp/fam.h | 4 | ||||
-rw-r--r-- | tests/cpp/tfam.nim | 7 |
3 files changed, 14 insertions, 1 deletions
diff --git a/lib/nimbase.h b/lib/nimbase.h index 4674b64c8..cdbb68ff2 100644 --- a/lib/nimbase.h +++ b/lib/nimbase.h @@ -475,7 +475,9 @@ typedef char* NCSTRING; } name = {{length, (NI) ((NU)length | NIM_STRLIT_FLAG)}, str} /* declared size of a sequence/variable length array: */ -#if defined(__GNUC__) || defined(__clang__) || defined(_MSC_VER) +#if defined(__cplusplus) && defined(__clang__) +# define SEQ_DECL_SIZE 1 +#elif defined(__GNUC__) || defined(_MSC_VER) # define SEQ_DECL_SIZE /* empty is correct! */ #else # define SEQ_DECL_SIZE 1000000 diff --git a/tests/cpp/fam.h b/tests/cpp/fam.h new file mode 100644 index 000000000..ad576425b --- /dev/null +++ b/tests/cpp/fam.h @@ -0,0 +1,4 @@ +struct Test{ + ~Test() { + } +}; diff --git a/tests/cpp/tfam.nim b/tests/cpp/tfam.nim new file mode 100644 index 000000000..6bd89fe24 --- /dev/null +++ b/tests/cpp/tfam.nim @@ -0,0 +1,7 @@ +discard """ + targets: "cpp" +""" +type + Test {.importcpp, header: "fam.h".} = object + +let test = newSeq[Test]() \ No newline at end of file |