mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 11:42:57 +01:00
Make sure that if anyone passes a name by accident for the isSigned
parameter of CreateIntCast then they get an error from the compiler (or from the linker with a non-gcc compiler). Another possibility is to flip the order of the DestTy and isSigned parameters, since you should then get a compiler warning if you try to use a char* for a Type*. llvm-svn: 88913
This commit is contained in:
parent
6469fa6824
commit
d67a1e3fa8
@ -78,4 +78,10 @@
|
||||
#define NORETURN
|
||||
#endif
|
||||
|
||||
#ifdef __GNUC__
|
||||
#define ERROR_IF_USED __attribute__((error("wrong usage")))
|
||||
#else
|
||||
#define ERROR_IF_USED
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@ -709,6 +709,9 @@ public:
|
||||
return Folder.CreateIntCast(VC, DestTy, isSigned);
|
||||
return Insert(CastInst::CreateIntegerCast(V, DestTy, isSigned), Name);
|
||||
}
|
||||
// Provided to resolve 'CreateIntCast(Ptr, Ptr, "...")', instead of converting
|
||||
// the string to 'bool' for the isSigned parameter.
|
||||
ERROR_IF_USED Value *CreateIntCast(Value *, const Type *, const char *);
|
||||
Value *CreateFPCast(Value *V, const Type *DestTy, const Twine &Name = "") {
|
||||
if (V->getType() == DestTy)
|
||||
return V;
|
||||
|
Loading…
Reference in New Issue
Block a user