summaryrefslogtreecommitdiffstatshomepage
path: root/Documentation/release-notes/v0.6.3.rst
blob: 521c0063778cac1e4b3bf4e3eada09e830116e48 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
v0.6.3 (Fall 2020)
==================

Bug fixes:
  * fix missing inlining of _Generic expression
  * fix evaluation error with assignment of qualified arrays
  * delay 'empty character constant' warning to phase 5
  * simplify & fix parsing of array declarators
  * accept whitespace after option -U
  * teach dissect about _Generic
  * reset locale after gtk_init() to workaround problems with strtold()
  * fix linearization of shift-assign
  * force to 0 expressions which are erroneously non-constant
  * fix evaluate_ptr_add() when sizeof(offset) != sizeof(pointer)
  * fix access to defining instruction in simplify_unop()
  * fix evaluation of pointer to bool conversions
  * fix usual conversion of integers

New features:
  * add support for arch specific asm constraints
  * add memory asm constraint for PPC & S390
  * prepend diagnostics with source's path and include chain
  * add support for h8300, microblaze, nds32, openrisc, sh & xtensa
  * add support for '-march=....' and use it for riscv
  * add an option to specify the OS: --os=$OS
  * add predefines for OS identification
  * add predefines for __INT_LEAST${N}_TYPE__ & __INT_FAST${N}_TYPE__
  * document the sparse's extensions
  * sindex/semind: allow indexing outside the project tree
  * rename tool 'sindex' to 'semind'
  * add builtin support for __sync_{bool,val}_compare_and_swap()
  * add support for wide strings
  * union-cast: teach sparse about union casts
  * add support for a new instruction: OP_FMADD
  * add various warnings for dangerous usage of flexible array members
  * add builtin support for  __builtin_ia32_pause()

Misc changes:
  * cleanup the handling of options flags
  * avoid multiple warnings when inlining undeclared calls
  * small fixes for alpha, arm, nios2, ppc, sparc & x86
  * add missing predefines for endianness on arm, arm64, mips
  * add various missing arch-specific predefines
  * add the predefines '__cdecl', ... on cygwin
  * warn on empty assignments & initializations
  * reorganize the keyword parsing table
  * the message in _Static_assert() is now optional (C2x)
  * small fixes & improvement to the [online] documentation
  * allow [*] in array declarators
  * do not accept comma expressions in array declarator
  * simplify parsing of attributes & storage class
  * bad-shift: wait dead code elimination to warn about bad shifts
  * fix is_scalar_type(): fouled types are scalars too
  * better support for linearization of builtins
  * remove definition of removed OP_{AND,OR}_BOOL