brintos

brintos / llvm-project-archived public Read only

0
0
Text · 777 B · 460ab1a Raw
34 lines · cpp
1//===----------------------------------------------------------------------===//2//3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.4// See https://llvm.org/LICENSE.txt for license information.5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception6//7//===----------------------------------------------------------------------===//8 9// Can you have a catch clause of array type that catches anything?10// UNSUPPORTED: no-exceptions11 12#include <cassert>13 14void f() {}15 16int main(int, char**)17{18    typedef void Function();19    try20    {21        throw f;     // converts to void (*)()22        assert(false);23    }24    catch (Function b)  // equivalent to void (*)()25    {26    }27    catch (...)28    {29        assert(false);30    }31 32    return 0;33}34