From 48b40df328d07a647b27f471993ac1de78c1b0ea Mon Sep 17 00:00:00 2001 From: Jacob Langley Date: Mon, 13 Feb 2017 13:11:10 -0800 Subject: [PATCH] Fix markdown lint errors 11979:3 warning Incorrect indentation before bullet: remove 1 space list-item-bullet-indent 19412:1-19462:23 warning Missing blank line before block node no-missing-blank-lines --- CppCoreGuidelines.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CppCoreGuidelines.md b/CppCoreGuidelines.md index 441b0b9..eab67ce 100644 --- a/CppCoreGuidelines.md +++ b/CppCoreGuidelines.md @@ -12000,12 +12000,12 @@ Unfortunately people's needs and constraints differ so dramatically that we cann but we can mention: * Static enforcement tools: both [clang](http://clang.llvm.org/docs/ThreadSafetyAnalysis.html) - and some older versions of [GCC](https://gcc.gnu.org/wiki/ThreadSafetyAnnotation) - have some support for static annotation of thread safety properties. - Consistent use of this technique turns many classes of thread-safety errors into compile-time errors. - The annotations are generally local (marking a particular member variable as guarded by a particular mutex), - and are usually easy to learn. However, as with many static tools, it can often present false negatives; - cases that should have been caught but were allowed. +and some older versions of [GCC](https://gcc.gnu.org/wiki/ThreadSafetyAnnotation) +have some support for static annotation of thread safety properties. +Consistent use of this technique turns many classes of thread-safety errors into compile-time errors. +The annotations are generally local (marking a particular member variable as guarded by a particular mutex), +and are usually easy to learn. However, as with many static tools, it can often present false negatives; +cases that should have been caught but were allowed. * dynamic enforcement tools: Clang's [Thread Sanitizer](http://clang.llvm.org/docs/ThreadSanitizer.html) (aka TSAN) is a powerful example of dynamic tools: it changes the build and execution of your program to add bookkeeping on memory access,