summaryrefslogtreecommitdiff
path: root/src/private_typeinfo.cpp
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2012-02-01 19:21:28 +0000
committerHoward Hinnant <hhinnant@apple.com>2012-02-01 19:21:28 +0000
commitaafd08aa288da66805f97231e8c64020bc9d50c6 (patch)
treef90cbaa7c320dce033691356c658334acf89250f /src/private_typeinfo.cpp
parent7c73587e51f0f8edcf01eb1d9529dcac24c9681f (diff)
Quash TODO regarding catch by array type. Add tests to back it up.
git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@149527 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'src/private_typeinfo.cpp')
-rw-r--r--src/private_typeinfo.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/private_typeinfo.cpp b/src/private_typeinfo.cpp
index 6cc2f64..cb7b7dc 100644
--- a/src/private_typeinfo.cpp
+++ b/src/private_typeinfo.cpp
@@ -238,7 +238,10 @@ bool
__array_type_info::can_catch(const __shim_type_info* thrown_type,
void*&) const
{
- // TODO: Can this be called?
+ // We can get here if someone tries to catch an array by reference.
+ // However if someone tries to throw an array, it immediately gets
+ // converted to a pointer, which will not convert back to an array
+ // at the catch clause. So this can never catch anything.
return false;
}