---
title: "Breaking: #98016 - Removed TypoScript function hook"
manual: "TYPO3 Core Changelog"
version: "main"
permalink: "https://docs.typo3.org/permalink/changelog:breaking-98016-1658731955"
source: "Changelog/12.0/Breaking-98016-RemovedTypoScriptFunctionHook.rst"
typo3-version: "12.0"
typo3-major: 12
type: "breaking"
issue: 98016
forge: "https://forge.typo3.org/issues/98016"
tags: ["PHP-API", "TSConfig", "TypoScript", "FullyScanned", "ext:core"]
rendered: "2026-09-25T23:17:45+00:00"
---

# Breaking: #98016 - Removed TypoScript function hook {#breaking-98016-1658731955}

See [forge#98016](https://forge.typo3.org/issues/98016)

## Description {#description}

With the transition to the [new TypoScript parser](https://docs.typo3.org/permalink/changelog:feature-97816-1656350667),
the hook `$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tsparser.php']['preParseFunc']`
is no longer called.

This hook has been used to implement own functions for the TypoScript "function" operator `:=`.

Additional functions can now be implemented using the
`\TYPO3\CMS\Core\TypoScript\AST\Event\EvaluateModifierFunctionEvent`
as described in [this Changelog](https://docs.typo3.org/permalink/changelog:feature-98016-1658732423).

## Impact {#impact}

With the continued implementation of the new TypoScript parser in TYPO3 v12,
registered hook implementations are not executed anymore. The extension scanner
will report possible usages.

## Affected installations {#affected-installations}

Extensions registering own TypoScript function implementations like this:

```typoscript
myValue := myCustomFunction(modifierArgument)
```

## Migration {#migration}

Implement the [new event](https://docs.typo3.org/permalink/changelog:feature-98016-1658732423). Extensions that want to keep
compatibility with both TYPO3 v11 and v12 can keep the old hook implementation without
further deprecations.
