mirror of
https://github.com/Z3Prover/z3
synced 2025-05-02 21:37:02 +00:00
other components
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
This commit is contained in:
parent
e9eab22e5c
commit
68269c43a6
250 changed files with 70871 additions and 0 deletions
67
test/ex.cpp
Normal file
67
test/ex.cpp
Normal file
|
@ -0,0 +1,67 @@
|
|||
/*++
|
||||
Copyright (c) 2006 Microsoft Corporation
|
||||
|
||||
Module Name:
|
||||
|
||||
ex.cpp
|
||||
|
||||
Abstract:
|
||||
|
||||
<abstract>
|
||||
|
||||
Author:
|
||||
|
||||
Leonardo de Moura (leonardo) 2011-04-28
|
||||
|
||||
Revision History:
|
||||
|
||||
--*/
|
||||
#include<iostream>
|
||||
#include"z3_exception.h"
|
||||
|
||||
class ex {
|
||||
public:
|
||||
virtual ~ex() {}
|
||||
virtual char const * msg() const = 0;
|
||||
};
|
||||
|
||||
class ex1 : public ex {
|
||||
char const * m_msg;
|
||||
public:
|
||||
ex1(char const * m):m_msg(m) {}
|
||||
virtual char const * msg() const { return m_msg; }
|
||||
};
|
||||
|
||||
class ex2 : public ex {
|
||||
std::string m_msg;
|
||||
public:
|
||||
ex2(char const * m):m_msg(m) {}
|
||||
virtual char const * msg() const { return m_msg.c_str(); }
|
||||
};
|
||||
|
||||
static void th() {
|
||||
throw ex2("testing exception");
|
||||
}
|
||||
|
||||
static void tst1() {
|
||||
try {
|
||||
th();
|
||||
}
|
||||
catch (ex & e) {
|
||||
std::cerr << e.msg() << "\n";
|
||||
}
|
||||
}
|
||||
|
||||
static void tst2() {
|
||||
try {
|
||||
throw default_exception("Format %d %s", 12, "twelve");
|
||||
}
|
||||
catch (z3_exception& ex) {
|
||||
std::cerr << ex.msg() << "\n";
|
||||
}
|
||||
}
|
||||
|
||||
void tst_ex() {
|
||||
tst1();
|
||||
tst2();
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue