diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/cps/CodeGen.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/include/cps/CodeGen.h b/include/cps/CodeGen.h index c0ae997..4844861 100644 --- a/include/cps/CodeGen.h +++ b/include/cps/CodeGen.h @@ -139,17 +139,15 @@ class CodeGen { bool requireWritable(const SymbolInfo &Info, const std::string &Name); const SymbolInfo *lookupWritableSymbol(const std::string &Name); void emitConstantStmt(ConstantStmtAST *Stmt); - std::map<const ConstantStmtAST *, SymbolInfo> StringConstants; const TypeInfo *requireStringType(); llvm::Value *emitStringFromCString(llvm::Value *Text); - llvm::Value *emitStringFromChar(llvm::Value *Ch); llvm::Value *emitCharFromString(ExprAST *Expr, int Line); llvm::Value *emitStringCString(llvm::Value *Value); llvm::Value *emitCStringExpr(ExprAST *Expr); llvm::Value *emitFileNameOperand(ExprAST *E, const char *Keyword); bool containsString(const TypeInfo *Type) const; const FuncSig *findImplicitConstructor(const TypeInfo *Source, const TypeInfo *Target); - bool canImplicitlyConvert(const TypeInfo *Source, const TypeInfo *Target); + int implicitConversionRank(const TypeInfo *Source, const TypeInfo *Target); llvm::Value *emitImplicitConstruct(const FuncSig &Constructor, const TypeInfo *Target, llvm::Value *Argument, const std::vector<size_t> &Transfers = {}); |
