ROSE 0.11.145.147
Rose/BinaryAnalysis/CallingConvention/Exception.h
1#ifndef ROSE_BinaryAnalysis_CallingConvention_Exception_H
2#define ROSE_BinaryAnalysis_CallingConvention_Exception_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_BINARY_ANALYSIS
5
6#include <Rose/Exception.h>
7
8#include <string>
9
10class SgAsmType;
11
12namespace Rose {
13namespace BinaryAnalysis {
14namespace CallingConvention {
15
18public:
20 Exception(const std::string &mesg)
21 : Rose::Exception(mesg) {}
22 virtual ~Exception() throw() {}
23};
24
26class ParseError: public Exception {
27public:
29 ParseError(const std::string &mesg)
30 : Exception(mesg) {}
31 virtual ~ParseError() throw() {}
32};
33
36public:
38 AllocationError(const std::string &mesg)
39 : Exception(mesg) {}
40
42 static AllocationError cannotAllocateArgument(int argIndex, const std::string &argName, SgAsmType*, const std::string &decl);
43
45 static AllocationError cannotAllocateReturn(SgAsmType*, const std::string &decl);
46
47 virtual ~AllocationError() throw() {}
48};
49
50} // namespace
51} // namespace
52} // namespace
53
54#endif
55#endif
static AllocationError cannotAllocateArgument(int argIndex, const std::string &argName, SgAsmType *, const std::string &decl)
Construct error about allocating an argument.
static AllocationError cannotAllocateReturn(SgAsmType *, const std::string &decl)
Construct error about allocating return value.
AllocationError(const std::string &mesg)
Construct error about allocating storage for something.
Exception(const std::string &mesg)
Construct error with specified message.
ParseError(const std::string &mesg)
Construct error with specified message.
Base class for all ROSE exceptions.
Base class for binary types.
The ROSE library.