diff options
Diffstat (limited to 'vendor/modernc.org/cc/v3/check.go')
-rw-r--r-- | vendor/modernc.org/cc/v3/check.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/vendor/modernc.org/cc/v3/check.go b/vendor/modernc.org/cc/v3/check.go index 50887870..a523760f 100644 --- a/vendor/modernc.org/cc/v3/check.go +++ b/vendor/modernc.org/cc/v3/check.go @@ -1138,6 +1138,10 @@ func (n *UnaryExpression) check(ctx *context, isAsmArg bool) Operand { case UnaryExpressionPlus: // '+' CastExpression op := n.CastExpression.check(ctx, isAsmArg) n.IsSideEffectsFree = n.CastExpression.IsSideEffectsFree + if op == nil { + //TODO report error + break + } if !op.Type().IsArithmeticType() { //TODO report error break @@ -1150,6 +1154,10 @@ func (n *UnaryExpression) check(ctx *context, isAsmArg bool) Operand { case UnaryExpressionMinus: // '-' CastExpression op := n.CastExpression.check(ctx, isAsmArg) n.IsSideEffectsFree = n.CastExpression.IsSideEffectsFree + if op == nil { + //TODO report error + break + } if op.Type().Kind() == Vector { n.Operand = &operand{abi: &ctx.cfg.ABI, typ: op.Type()} break |