diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2019-09-19 21:12:57 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-09-19 21:12:57 -0400 |
| commit | e81156b87364a31bee892aee2e6145f65c02fa35 (patch) | |
| tree | ae784e161db393c18e8fbbc99a5f17454e20f4e8 /src/translate_c.cpp | |
| parent | 925ffbce7f424548be9eb42eb3914d5035066003 (diff) | |
| parent | b76d16c7c7b54b3da35c3c91a8e5bc5dc7d6c57e (diff) | |
| download | zig-e81156b87364a31bee892aee2e6145f65c02fa35.tar.gz zig-e81156b87364a31bee892aee2e6145f65c02fa35.zip | |
Merge pull request #3260 from ziglang/llvm9
LLVM 9
Diffstat (limited to 'src/translate_c.cpp')
| -rw-r--r-- | src/translate_c.cpp | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/src/translate_c.cpp b/src/translate_c.cpp index 7a4ad3f57d..d007b83fcd 100644 --- a/src/translate_c.cpp +++ b/src/translate_c.cpp @@ -1301,6 +1301,7 @@ static AstNode *trans_type(Context *c, const ZigClangType *ty, ZigClangSourceLoc case ZigClangType_DeducedTemplateSpecialization: case ZigClangType_DependentAddressSpace: case ZigClangType_DependentVector: + case ZigClangType_MacroQualified: emit_warning(c, source_loc, "unsupported type: '%s'", ZigClangType_getTypeClassName(ty)); return nullptr; } @@ -2188,6 +2189,15 @@ static AstNode *trans_implicit_cast_expr(Context *c, ResultUsed result_used, Tra case ZigClangCK_IntToOCLSampler: emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C CK_IntToOCLSampler"); return nullptr; + case ZigClangCK_LValueToRValueBitCast: + emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C CK_LValueToRValueBitCast"); + return nullptr; + case ZigClangCK_FixedPointToIntegral: + emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C CK_FixedPointToIntegral"); + return nullptr; + case ZigClangCK_IntegralToFixedPoint: + emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C CK_IntegralToFixedPointral"); + return nullptr; } zig_unreachable(); } @@ -2671,6 +2681,15 @@ static int trans_local_declaration(Context *c, TransScope *scope, const clang::D case clang::Decl::TranslationUnit: emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C TranslationUnit"); return ErrorUnexpected; + case clang::Decl::Concept: + emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C Concept"); + return ErrorUnexpected; + case clang::Decl::OMPDeclareMapper: + emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C OMPDeclareMapper"); + return ErrorUnexpected; + case clang::Decl::OMPAllocate: + emit_warning(c, bitcast(stmt->getBeginLoc()), "TODO handle C OMPAllocate"); + return ErrorUnexpected; } zig_unreachable(); } @@ -2946,6 +2965,7 @@ static AstNode *trans_bool_expr(Context *c, ResultUsed result_used, TransScope * case ZigClangType_DeducedTemplateSpecialization: case ZigClangType_DependentAddressSpace: case ZigClangType_DependentVector: + case ZigClangType_MacroQualified: return res; } zig_unreachable(); @@ -4031,6 +4051,12 @@ static int trans_stmt_extra(Context *c, TransScope *scope, const ZigClangStmt *s case ZigClangStmt_SEHTryStmtClass: emit_warning(c, ZigClangStmt_getBeginLoc(stmt), "TODO handle C SEHTryStmtClass"); return ErrorUnexpected; + case ZigClangStmt_BuiltinBitCastExprClass: + emit_warning(c, ZigClangStmt_getBeginLoc(stmt), "TODO handle C BuiltinBitCastExprClass"); + return ErrorUnexpected; + case ZigClangStmt_SourceLocExprClass: + emit_warning(c, ZigClangStmt_getBeginLoc(stmt), "TODO handle C SourceLocExprClass"); + return ErrorUnexpected; } zig_unreachable(); } @@ -4448,7 +4474,7 @@ static AstNode *trans_ap_value(Context *c, const ZigClangAPValue *ap_value, ZigC switch (ZigClangAPValue_getKind(ap_value)) { case ZigClangAPValueInt: return trans_create_node_apint(c, ZigClangAPValue_getInt(ap_value)); - case ZigClangAPValueUninitialized: + case ZigClangAPValueNone: return trans_create_node(c, NodeTypeUndefinedLiteral); case ZigClangAPValueArray: { emit_warning(c, source_loc, "TODO add a test case for this code"); @@ -4539,6 +4565,12 @@ static AstNode *trans_ap_value(Context *c, const ZigClangAPValue *ap_value, ZigC case ZigClangAPValueAddrLabelDiff: emit_warning(c, source_loc, "unsupported initializer value kind: AddrLabelDiff"); return nullptr; + case ZigClangAPValueIndeterminate: + emit_warning(c, source_loc, "unsupported initializer value kind: Indeterminate"); + return nullptr; + case ZigClangAPValueFixedPoint: + emit_warning(c, source_loc, "unsupported initializer value kind: FixedPoint"); + return nullptr; } zig_unreachable(); } |
