aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2020-06-13 00:02:05 +0200
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2020-06-13 00:07:06 +0200
commitbcc11c748107078e0df35ae5b09de519f0d8781c (patch)
tree14e8748164f982ce546aa990192c9ee69d5ea310
parent2569db76224a4196e52f0fedd66144509fe1874b (diff)
downloadsparse-bcc11c748107078e0df35ae5b09de519f0d8781c.tar.gz
doc: add release notes for incoming v0.6.2
Currently, the release notes are kept on the wiki which contains nothing else but a small intro. The docs are certainly as good as this wiki to keep these release notes. So, let try this for now. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r--Documentation/index.rst7
-rw-r--r--Documentation/release-notes/index.rst8
-rw-r--r--Documentation/release-notes/v0.6.2.rst100
3 files changed, 115 insertions, 0 deletions
diff --git a/Documentation/index.rst b/Documentation/index.rst
index 5dd87e43..eb3de63c 100644
--- a/Documentation/index.rst
+++ b/Documentation/index.rst
@@ -39,6 +39,13 @@ Documentation
doc-guide
+Release Notes
+-------------
+.. toctree::
+ :maxdepth: 1
+
+ release-notes/index
+
Indices and tables
==================
diff --git a/Documentation/release-notes/index.rst b/Documentation/release-notes/index.rst
new file mode 100644
index 00000000..c55ed09a
--- /dev/null
+++ b/Documentation/release-notes/index.rst
@@ -0,0 +1,8 @@
+*************
+Release Notes
+*************
+
+.. toctree::
+ :maxdepth: 1
+
+ v0.6.2
diff --git a/Documentation/release-notes/v0.6.2.rst b/Documentation/release-notes/v0.6.2.rst
new file mode 100644
index 00000000..0ef67fc5
--- /dev/null
+++ b/Documentation/release-notes/v0.6.2.rst
@@ -0,0 +1,100 @@
+V0.6.2
+======
+
+* add a new tool: sindex - the semantic utility
+ Sindex is a simple to use cscope-like tool but understanding
+ how symbols are used and which can track struct members.
+
+* add support for GCC's __auto_type
+
+* add support for _Generic
+
+* fully propagate declarations downward
+ For exemple, it means that code like:
+
+ static int foo(void);
+ int foo(void) { return 0; }
+
+ now behaves as expected: foo() is effectively static
+
+* multi-arch:
+ * allow a single sparse executable to be used for multiple architectures
+ * add support for -mcmodel & -f{pic,PIC,pie,PIE}, mainly for RISC-V
+ * add new option, --arch=$ARCH, to specify the target architecture
+ * move all arch-specifc code in separated files (target-$ARCH.c)
+ * try to support the various floating-point ABIs on ARM
+ * fix wchar_t & wint_t for openbsd
+ * add missing predefines for PPC
+ * add missing predfines: __amd64 & __amd64__
+ * sparc32 on SunOS/Solaris uses 128-bit long double
+ * fix wchar_t & wint_t on SunOS/Solaris
+ * teach sparse about -fshort-wchar
+ * keep cygwin specifics with i386/x86-64 specifics
+ * keep BSD & Darwin specifics with i386/x86-64 specifics
+ * fix the signedness of plain chars
+ * add support for s390 (ILP32)
+ * add predefine for __mips__
+ * predefine "i386" if needed
+ * pre-define __unix__ and friends
+ * add necessary defined for sunos-derived systems
+ * improved detection of the native OS
+
+* warnings
+ * improve diagnostic message about wrong redeclaration
+ * conditionally accept { 0 } without warnings
+ * add -Wexternal-function-has-definition
+ * display the bitfield name in error messages
+ * oversized bitfields are now errors
+ * add an option to suppress warning 'no newline at EOF'
+ * warn when jumping into statement expressions
+ * warn when using undefined labels
+ * warn on defined but unused labels
+
+* attributes:
+ * allows '__<attribute-name>__' for all attributes.
+ * improve handling of function attributes
+ * separate modifiers into type/declaration
+ * add support for attributes 'unused' & 'gnu_inline'
+ * simplify parsing of inline/__tls/__visible
+ * better handle function-only attributes
+ * teach sparse about gnu_inline
+
+* typeof:
+ * ensure that typeofs are evaluated before using show_typename()
+ * use a single way to expand typeofs
+
+* cgcc:
+ * use -fshort-char for Cygwin
+ * add support for riscv32 & riscv64
+ * don't define __CYGWIN32__ on 64-bit
+ * filter-out sparse-specific -msize-long & -msize-llp64
+ * use -mfloat-abi=hard for armhf
+ * define _BIG_ENDIAN when needed
+ * remove definition of _STRING_ARCH_unaligned (defined by glibc)
+ * removed unneeded predefines for integers (now defined by sparse)
+ * better mult-arch support by using --arch=$ARCH
+
+* testsuite:
+ * avoid standard includes in the tests
+ * fix testcase with non-constant initializer
+
+* IR
+ * add support for the linearization of builtins
+ * generate OP_UNREACH from __builtin_unreachable()
+ * add OP_UNREACH after calls to __noreturn functions
+
+* doc:
+ * do not use obsolete sphinx's AutodocReporter
+ * add basic doc about the type system
+ * doc is now accessible as: https://sparse.docs.kernel.org
+
+* misc:
+ * add support for '-std=c17/c18'
+ * simplify testng of which version of the standard is used
+ * various improvements to the 'dissect' tool
+ * simplify the parsing of type specifiers
+ * improve diagnostic messages concerning bitfields
+ * fix premature examination of dereferenced object
+ * various fixes for the expansion of constant symbols
+ * fix type compatibility of _Atomic types
+