view gcc/testsuite/g++.dg/torture/pr33735.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
line wrap: on
line source

// { dg-do compile }
#include <string>
typedef struct _ts { } PyThreadState;
PyThreadState * Py_NewInterpreter(void);
void Py_EndInterpreter(PyThreadState *);
class ApplicationError {
public:
    ApplicationError(std::string errormsg) : errormsg(errormsg)  { }
    std::string errormsg;
};
void run()
{
    PyThreadState *py_state=__null;
    try {
        if (!(py_state=Py_NewInterpreter()))
            throw ApplicationError("error");
    }
    catch(ApplicationError e) {
        Py_EndInterpreter(py_state);
    }
}