Skip to content

Commit

Permalink
[website] Update the website
Browse files Browse the repository at this point in the history
Reviewed By: ngorogiannis

Differential Revision: D61716981

fbshipit-source-id: 40fb7c5b419ffab8ab2c445031f355b2578a177e
  • Loading branch information
dulmarod authored and facebook-github-bot committed Aug 23, 2024
1 parent f0fda15 commit ddc2477
Show file tree
Hide file tree
Showing 1,785 changed files with 1,811 additions and 1,783 deletions.
2 changes: 1 addition & 1 deletion infer/documentation/issues/CXX_STRING_CAPTURED_IN_BLOCK.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ not annotated with `__attribute__((noescape))`.
Example:

```
- (void)ref_captured_in_escaping_block_bad {
- (void)string_captured_in_escaping_block_bad {
std::string fullName;
dispatch_async(dispatch_get_main_queue(), ^{
const char* c = fullName.c_str();
Expand Down
1 change: 1 addition & 0 deletions website/docs/all-categories.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ Incorrect handling of pointers that isn't a null pointer dereference, but can st

Issue types in this category:
- [CXX_REF_CAPTURED_IN_BLOCK](/docs/next/all-issue-types#cxx_ref_captured_in_block)
- [CXX_STRING_CAPTURED_IN_BLOCK](/docs/next/all-issue-types#cxx_string_captured_in_block)
- [NIL_MESSAGING_TO_NON_POD](/docs/next/all-issue-types#nil_messaging_to_non_pod)
- [NIL_MESSAGING_TO_NON_POD_LATENT](/docs/next/all-issue-types#nil_messaging_to_non_pod_latent)
- [PULSE_REFERENCE_STABILITY](/docs/next/all-issue-types#pulse_reference_stability)
Expand Down
24 changes: 24 additions & 0 deletions website/docs/all-issue-types.md
Original file line number Diff line number Diff line change
Expand Up @@ -550,6 +550,30 @@ This could cause crashes because C++ references are not managed pointers
(like ARC pointers) and so the referent is likely to be gone if the block
dereferences it later.
## CXX_STRING_CAPTURED_IN_BLOCK
*Category: [Memory error](/docs/next/all-categories#memory-error). Reported as "C++ String Captured in Block" by [self-in-block](/docs/next/checker-self-in-block).*
This check flags when a local variable of type `std::string` is captured in an escaping block.
This means that the block will be leaving the current scope, i.e. it is
not annotated with `__attribute__((noescape))`.
Example:
```
- (void)string_captured_in_escaping_block_bad {
std::string fullName;
dispatch_async(dispatch_get_main_queue(), ^{
const char* c = fullName.c_str();
...
});
...;
}
```
This could cause crashes because the variable is likely to be freed if the block
uses it later.
## DANGLING_POINTER_DEREFERENCE
*Reported as "Dangling Pointer Dereference" by [biabduction](/docs/next/checker-biabduction).*
Expand Down
1 change: 1 addition & 0 deletions website/docs/checker-self-in-block.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ Supported languages:
The following issue types are reported by this checker:
- [CAPTURED_STRONG_SELF](/docs/next/all-issue-types#captured_strong_self)
- [CXX_REF_CAPTURED_IN_BLOCK](/docs/next/all-issue-types#cxx_ref_captured_in_block)
- [CXX_STRING_CAPTURED_IN_BLOCK](/docs/next/all-issue-types#cxx_string_captured_in_block)
- [MIXED_SELF_WEAKSELF](/docs/next/all-issue-types#mixed_self_weakself)
- [MULTIPLE_WEAKSELF](/docs/next/all-issue-types#multiple_weakself)
- [SELF_IN_BLOCK_PASSED_TO_INIT](/docs/next/all-issue-types#self_in_block_passed_to_init)
Expand Down
1 change: 1 addition & 0 deletions website/static/man/next/infer-report.1.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions website/static/man/next/infer.1.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion website/static/odoc/next/infer/ATDGenerated.html
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>ATDGenerated (infer.ATDGenerated)</title><meta charset="utf-8"/><link rel="stylesheet" href="../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="index.html">Up</a><a href="index.html">infer</a> &#x00BB; ATDGenerated</nav><header class="odoc-preamble"><h1 id="library-atdgenerated"><a href="#library-atdgenerated" class="anchor"></a>Library ATDGenerated</h1><p>Source code that is generated from ATD definitions.</p><p>The entry point of this library is the module <a href="ATDGenerated/index.html"><code>ATDGenerated</code></a>.</p></header><div class="odoc-content"></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>ATDGenerated (infer.ATDGenerated)</title><meta charset="utf-8"/><link rel="stylesheet" href="../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="index.html">Up</a><a href="index.html">infer</a> &#x00BB; ATDGenerated</nav><header class="odoc-preamble"><h1 id="library-atdgenerated"><a href="#library-atdgenerated" class="anchor"></a>Library ATDGenerated</h1><p>Source code that is generated from ATD definitions.</p><p>The entry point of this library is the module <a href="ATDGenerated/index.html"><code>ATDGenerated</code></a>.</p></header><div class="odoc-content"></div></body></html>
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>AtdDeps (infer.ATDGenerated.AtdDeps)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a><a href="../../index.html">infer</a> &#x00BB; <a href="../index.html">ATDGenerated</a> &#x00BB; AtdDeps</nav><header class="odoc-preamble"><h1>Module <code><span>ATDGenerated.AtdDeps</span></code></h1><p>functions necessary to include in atd generated files to enable ppx_compare</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-equal_string"><a href="#val-equal_string" class="anchor"></a><code><span><span class="keyword">val</span> equal_string : <span>string <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_list"><a href="#val-equal_list" class="anchor"></a><code><span><span class="keyword">val</span> equal_list : <span><span>(<span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> <span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> bool)</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> list</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> list</span> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_option"><a href="#val-equal_option" class="anchor"></a><code><span><span class="keyword">val</span> equal_option : <span><span>(<span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> <span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> bool)</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> option</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> option</span> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_int"><a href="#val-equal_int" class="anchor"></a><code><span><span class="keyword">val</span> equal_int : <span>int <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_bool"><a href="#val-equal_bool" class="anchor"></a><code><span><span class="keyword">val</span> equal_bool : <span>bool <span class="arrow">&#45;&gt;</span></span> <span>bool <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>AtdDeps (infer.ATDGenerated.AtdDeps)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a><a href="../../index.html">infer</a> &#x00BB; <a href="../index.html">ATDGenerated</a> &#x00BB; AtdDeps</nav><header class="odoc-preamble"><h1>Module <code><span>ATDGenerated.AtdDeps</span></code></h1><p>functions necessary to include in atd generated files to enable ppx_compare</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-equal_string"><a href="#val-equal_string" class="anchor"></a><code><span><span class="keyword">val</span> equal_string : <span>string <span class="arrow">&#45;&gt;</span></span> <span>string <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_list"><a href="#val-equal_list" class="anchor"></a><code><span><span class="keyword">val</span> equal_list : <span><span>(<span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> <span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> bool)</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> list</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> list</span> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_option"><a href="#val-equal_option" class="anchor"></a><code><span><span class="keyword">val</span> equal_option : <span><span>(<span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> <span><span class="type-var">'a</span> <span class="arrow">&#45;&gt;</span></span> bool)</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> option</span> <span class="arrow">&#45;&gt;</span></span> <span><span><span class="type-var">'a</span> option</span> <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_int"><a href="#val-equal_int" class="anchor"></a><code><span><span class="keyword">val</span> equal_int : <span>int <span class="arrow">&#45;&gt;</span></span> <span>int <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-equal_bool"><a href="#val-equal_bool" class="anchor"></a><code><span><span class="keyword">val</span> equal_bool : <span>bool <span class="arrow">&#45;&gt;</span></span> <span>bool <span class="arrow">&#45;&gt;</span></span> bool</span></code></div></div></div></body></html>

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Clang_ast_proj (infer.ATDGenerated.Clang_ast_proj)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a><a href="../../index.html">infer</a> &#x00BB; <a href="../index.html">ATDGenerated</a> &#x00BB; Clang_ast_proj</nav><header class="odoc-preamble"><h1>Module <code><span>ATDGenerated.Clang_ast_proj</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-get_cast_kind"><a href="#val-get_cast_kind" class="anchor"></a><code><span><span class="keyword">val</span> get_cast_kind : <span><a href="../Clang_ast_t/index.html#type-stmt">Clang_ast_t.stmt</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Clang_ast_t/index.html#type-cast_kind">Clang_ast_t.cast_kind</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_decl_context_tuple"><a href="#val-get_decl_context_tuple" class="anchor"></a><code><span><span class="keyword">val</span> get_decl_context_tuple :
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Clang_ast_proj (infer.ATDGenerated.Clang_ast_proj)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a><a href="../../index.html">infer</a> &#x00BB; <a href="../index.html">ATDGenerated</a> &#x00BB; Clang_ast_proj</nav><header class="odoc-preamble"><h1>Module <code><span>ATDGenerated.Clang_ast_proj</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec value anchored" id="val-get_cast_kind"><a href="#val-get_cast_kind" class="anchor"></a><code><span><span class="keyword">val</span> get_cast_kind : <span><a href="../Clang_ast_t/index.html#type-stmt">Clang_ast_t.stmt</a> <span class="arrow">&#45;&gt;</span></span> <span><a href="../Clang_ast_t/index.html#type-cast_kind">Clang_ast_t.cast_kind</a> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_decl_context_tuple"><a href="#val-get_decl_context_tuple" class="anchor"></a><code><span><span class="keyword">val</span> get_decl_context_tuple :
<span><a href="../Clang_ast_t/index.html#type-decl">Clang_ast_t.decl</a> <span class="arrow">&#45;&gt;</span></span>
<span><span>(<span><a href="../Clang_ast_t/index.html#type-decl">Clang_ast_t.decl</a> list</span> * <a href="../Clang_ast_t/index.html#type-decl_context_info">Clang_ast_t.decl_context_info</a>)</span> option</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_decl_kind_string"><a href="#val-get_decl_kind_string" class="anchor"></a><code><span><span class="keyword">val</span> get_decl_kind_string : <span><a href="../Clang_ast_t/index.html#type-decl">Clang_ast_t.decl</a> <span class="arrow">&#45;&gt;</span></span> string</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_decl_tuple"><a href="#val-get_decl_tuple" class="anchor"></a><code><span><span class="keyword">val</span> get_decl_tuple : <span><a href="../Clang_ast_t/index.html#type-decl">Clang_ast_t.decl</a> <span class="arrow">&#45;&gt;</span></span> <a href="../Clang_ast_t/index.html#type-decl_info">Clang_ast_t.decl_info</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get_expr_tuple"><a href="#val-get_expr_tuple" class="anchor"></a><code><span><span class="keyword">val</span> get_expr_tuple :
<span><a href="../Clang_ast_t/index.html#type-stmt">Clang_ast_t.stmt</a> <span class="arrow">&#45;&gt;</span></span>
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>TypePtr (infer.ATDGenerated.Clang_ast_types.TypePtr)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.1"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a><a href="../../../index.html">infer</a> &#x00BB; <a href="../../index.html">ATDGenerated</a> &#x00BB; <a href="../index.html">Clang_ast_types</a> &#x00BB; TypePtr</nav><header class="odoc-preamble"><h1>Module <code><span>Clang_ast_types.TypePtr</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span><span>..</span></code></div></div><div class="odoc-spec"><div class="spec type extension anchored" id="extension-decl-Ptr"><a href="#extension-decl-Ptr" class="anchor"></a><code><span><span class="keyword">type</span> <a href="#type-t">t</a> += </span></code><ol><li id="extension-Ptr" class="def variant extension anchored"><a href="#extension-Ptr" class="anchor"></a><code><span>| </span><span><span class="extension">Ptr</span> <span class="keyword">of</span> int</span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-wrap"><a href="#val-wrap" class="anchor"></a><code><span><span class="keyword">val</span> wrap : <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-unwrap"><a href="#val-unwrap" class="anchor"></a><code><span><span class="keyword">val</span> unwrap : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></div></body></html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>TypePtr (infer.ATDGenerated.Clang_ast_types.TypePtr)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a><a href="../../../index.html">infer</a> &#x00BB; <a href="../../index.html">ATDGenerated</a> &#x00BB; <a href="../index.html">Clang_ast_types</a> &#x00BB; TypePtr</nav><header class="odoc-preamble"><h1>Module <code><span>Clang_ast_types.TypePtr</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span><span>..</span></code></div></div><div class="odoc-spec"><div class="spec type extension anchored" id="extension-decl-Ptr"><a href="#extension-decl-Ptr" class="anchor"></a><code><span><span class="keyword">type</span> <a href="#type-t">t</a> += </span></code><ol><li id="extension-Ptr" class="def variant extension anchored"><a href="#extension-Ptr" class="anchor"></a><code><span>| </span><span><span class="extension">Ptr</span> <span class="keyword">of</span> int</span></code></li></ol></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-wrap"><a href="#val-wrap" class="anchor"></a><code><span><span class="keyword">val</span> wrap : <span>int <span class="arrow">&#45;&gt;</span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-unwrap"><a href="#val-unwrap" class="anchor"></a><code><span><span class="keyword">val</span> unwrap : <span><a href="#type-t">t</a> <span class="arrow">&#45;&gt;</span></span> int</span></code></div></div></div></body></html>
Loading

0 comments on commit ddc2477

Please sign in to comment.