aboutsummaryrefslogtreecommitdiff
path: root/src/check_expr.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix #998gingerBill2021-05-311-0/+10
|
* Fix polymorphic record "too few" lacking error messagegingerBill2021-05-311-2/+10
|
* Fix `..=` logic in the backendgingerBill2021-05-211-1/+1
|
* Add range-based error messages to `-verbose-errors`gingerBill2021-05-191-8/+9
| | | | | | | | Example: Cannot convert '(1 + 2)' to 'untyped bool' from 'untyped integer' x := (1 + 2) * true; ^~~~~~^
* Improve untyped to typed logic for aiding the backendgingerBill2021-05-161-2/+21
|
* Add concrete type information for untyped values as procedure argumentsgingerBill2021-05-161-0/+6
|
* Fix #988gingerBill2021-05-161-0/+1
|
* Allow `..=` alongside `..` as a "full range" operator; Update ↵gingerBill2021-05-161-3/+4
| | | | `core:odin/parser` etc
* Remove old dead codegingerBill2021-05-151-72/+0
|
* Fix #987gingerBill2021-05-151-1/+1
|
* Disallow slicing of constant valuesgingerBill2021-05-151-3/+10
|
* Add minor ignoring hint on type assertions to get better code generation ↵gingerBill2021-05-131-0/+20
| | | | with no optimizations enabled
* Fix #741gingerBill2021-05-131-1/+3
|
* Improve error message to "fix" #640gingerBill2021-05-121-1/+1
|
* Fix #713gingerBill2021-05-121-2/+8
|
* Fix #651gingerBill2021-05-121-2/+11
|
* Remove unused hintgingerBill2021-05-061-4/+0
|
* Improve type inference system to allow `&{}` alongside `&T{}` in some casesgingerBill2021-05-061-1/+6
|
* Improve type inference rules for implicit selector expressionsgingerBill2021-05-061-68/+110
| | | | | | New improvements: `(.A == x)` `a_union_containing_many_enums = .A;`
* Unify `AstTernaryExpr` with `AstTernaryIfExpr`gingerBill2021-05-051-105/+15
| | | | | Allow for both syntaxes `x if cond else y` and `cond ? x : y` Removes the confusing semantics behind `?:` which could be `if` or `when` depending on the context.
* Improve ternary expression logic within parametric polymorphic parameter ↵gingerBill2021-05-051-1/+34
| | | | assignments
* Disallow unnamed polymorphic recordsgingerBill2021-04-291-0/+31
|
* Fix #893gingerBill2021-04-271-2/+3
|
* Remove warning for "Redundant 'auto_cast' applied to expression"gingerBill2021-04-261-1/+1
|
* Remove `use_llvm_api` related checks and other related thingsgingerBill2021-04-251-4/+0
|
* Remove old procedure ABI codegingerBill2021-04-251-8/+0
|
* Move `check_builtin_procedure` to check_builtin.cppgingerBill2021-04-231-2805/+1
|
* Warn on redundant `auto_cast`, and make an error on `-vet`gingerBill2021-04-221-0/+9
|
* Add intrinsics: overflow_add, overflow_sub, overflow_mul; Change byte swap ↵gingerBill2021-04-221-19/+96
| | | | behaviour in -llvm-api to be the same as the intrinsic
* Add intrinsics: byte_swap (integers and floats); count_ones; trailing_zeros; ↵gingerBill2021-04-221-3/+37
| | | | reverse_bits
* Remove `intrinsics.x86_mmx` typegingerBill2021-04-221-3/+0
|
* Add new intrinsics: debug_trap, trap, read_cycle_counter, expectgingerBill2021-04-221-1/+66
|
* Remove useless error message for constant binary expressions with ↵gingerBill2021-04-211-15/+11
| | | | non-constant operations
* Fix typogingerBill2021-04-191-1/+1
|
* Add code that was accidentally removedgingerBill2021-04-191-0/+2
|
* Improve `#optional_ok` logic for procedures; Add `#optional_second` for ↵gingerBill2021-04-191-99/+111
| | | | `package runtime` usage
* Allow assignment of procedure calls with `#optional_ok` to single valuesgingerBill2021-04-191-9/+23
|
* Allow casting of `#optional_ok` call expressionsgingerBill2021-04-191-1/+22
|
* Fix `update_expr_type` behaviour, along with fixing procedure groups ↵gingerBill2021-04-191-10/+48
| | | | updating the proc expr type
* Fix `override_entity_in_scope `behaviour to correctly to report the changes ↵gingerBill2021-04-191-3/+0
| | | | upstream better
* Add `@(cold)` attribute to procedure declarationsgingerBill2021-04-141-15/+15
|
* Allow `intrinsics` entities to be exported from other packages if wantedgingerBill2021-04-131-1/+1
|
* Implement fixed-point arithmetic intrinsics for -llvm-api backendgingerBill2021-04-011-0/+71
|
* Fix missing complex32/quaternion64 checksgingerBill2021-04-011-0/+2
|
* Add min(f16) and max(f16) supportgingerBill2021-04-011-0/+6
|
* Implement `f16` functionalitygingerBill2021-04-011-3/+23
|
* Refactor record polymorphic params code for unificationgingerBill2021-03-271-1/+2
|
* Fix #883 - polymorphic specialization with target types of enumerated arraysgingerBill2021-03-271-0/+60
|
* Implement `soa_unzip`gingerBill2021-03-241-0/+34
|
* Add type hinting to `soa_zip`gingerBill2021-03-241-6/+49
|