@specs-feup/clava
Version:
A C/C++ source-to-source compiler written in Typescript
31 lines • 756 B
TypeScript
import SimplePass from "@specs-feup/lara/api/lara/pass/SimplePass.js";
import PassResult from "@specs-feup/lara/api/lara/pass/results/PassResult.js";
import { Joinpoint, Vardecl } from "../../Joinpoints.js";
/**
* Transforms local static variables into global variables.
*
* This means that code like this:
*
* ```c
* int foo() {
* static int x = 10;
* return x;
* }
* ```
*
* Will be transformed into:
*
* ```c
* int foo_static_x = 10;
*
* int foo() {
* return foo_static_x;
* }
* ```
*/
export default class LocalStaticToGlobal extends SimplePass {
protected _name: string;
matchJoinpoint($jp: Joinpoint): boolean;
transformJoinpoint($jp: Vardecl): PassResult;
}
//# sourceMappingURL=LocalStaticToGlobal.d.ts.map