# FunC comments (https://docs-i0yym09dy-ton-core-docs.vercel.app/llms/languages/func/comments/content.md)



<Callout type="note">
  The official smart contract language of TON Blockchain is [Tolk](/llms/tolk/overview/content.md). FunC is now a **legacy** language, with its compiler no longer maintained.

  Learn how to [migrate from FunC to Tolk](/llms/tolk/from-func/tolk-vs-func/content.md). For new smart contract projects, use the [Acton toolchain](/llms/contract-dev/acton/content.md).
</Callout>

FunC supports both single-line and multi-line comments.

**Single-line** comments start with a double semicolon `;;`. For example:

```func
int x = 1; ;; assigns 1 to x
```

**Multi-line** comments begin with an opening curly brace and dash `{-` and end with a dash and closing curly brace `-}`.
Unlike other languages, FunC allows **nested multi-line comments**.

Example:

```func
{- This is a multi-line comment
    {- This is a comment inside a comment -}
-}
```

Single-line comments `;;` can also appear inside multi-line comments. They take precedence over the multi-line comments `{- -}`.

For example, in the following snippet, `const a = 10;` is inside a multi-line comment and is effectively commented out:

```func
{-
  Start of the comment

;; This comment’s ending is itself commented out -> -}

const a = 10;

;; This comment’s beginning is itself commented out -> {-

  End of the comment
-}
```
