---
name: "ac++"
section: "1"
platform: "linux"
package: "aspectc++"
version: "1:2.3+git20241211-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ac++"
---

# ac++(1)

aspect weaver for C++

## NAME

aspectc++ — aspect weaver for C++

## SYNOPSIS

**ac++**  -p *srcidr* -d *destdir*

**ac++**  -c *input* -o *outputr*

## DESCRIPTION

This manual page documents briefly the  **ac++** command.

**ac++** is the AspectC++ weaver. **ac++**       does source-to-source translation. This manual page documents the minimum  needed in order to use **ac++**. For a better reference,  see AspectC++ documentation.

The first syntax form above invokes **ac++** in WPT  mode, while the second one invokes it in STU mode (see OPERATION MODES  below)

## OPERATION MODES

*WPT* (whole program transformation) mode does the  translation of the entire source tree into another one. This is useful to  apply all the aspects of one source tree, generating other source tree  with the aspects woven into the sources.

To use WPT mode, run **ac++** with the first syntax form  Specify the original source tree in the *srcdir* argument, and a name for the destination source tree in the  *destdir* argument.

*STU* (single translation unit) mode does the  translation of one translation unit, namely a C++ single file, for  exemple. This mode applies to the translation units all aspects that  affect it.

To use STU mode, run **ac++** with the second syntax form.  Specify the translation unit in the *input* argument,  and the output file in the *output* argument.  The  **-c** works as in **g++**: if omitted,  you're telling to **ac++** to compile the source into an  executable; if present, source will be compiled into an object (.o) file.

## OPTIONS

Further options can be seen in AspectC++ documentation.

## SEE ALSO

ag++ (1), g++ (1).

Again: for full reference on AspectC++ usage, see AspectC++  documentation. It can be obtained from  *http://www.aspectc.org*

## AUTHOR

This manual page was written by Antonio S. de A. Terceiro \<asaterceiro@inf.ufrgs.br\> for the **Debian** system (but may be used by others).  Permission is granted to copy,  distribute and/or modify this document under the terms of the GNU General Public License, Version 2 any later version published by the Free  Software Foundation.

On Debian systems, the complete text of the GNU General Public  License can be found in /usr/share/common-licenses/GPL.
