# parse\_decl

```
Parse one type declaration
     input -  a C declaration
     flags -  combination of PT_... constants or 0
              PT_FILE should not be specified in flags (it is ignored)
returns: typeinfo object or num 0

typeinfo parse_decl(string input, long flags);

#define PT_FILE   0x0001  // input is a file name (otherwise a string containing type declarations)
#define PT_SILENT 0x0002  // silent mode
#define PT_PAKDEF 0x0000  // default pack value
#define PT_PAK1   0x0010  // #pragma pack(1)
#define PT_PAK2   0x0020  // #pragma pack(2)
#define PT_PAK4   0x0030  // #pragma pack(4)
#define PT_PAK8   0x0040  // #pragma pack(8)
#define PT_PAK16  0x0050  // #pragma pack(16)
#define PT_HIGH   0x0080  // assume high level prototypes
                          // (with hidden args, etc)
#define PT_LOWER  0x0100  // lower the function prototypes
#define PT_REPLACE 0x0200 // replace the old type
#define PT_RAWARGS 0x0400 // leave argument names unchanged
                          // (do not remove underscores)
#define PT_RELAXED 0x1000 // accept references to unknown namespaces
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hex-rays.com/9.0/developer-guide/idc/idc-api-reference/alphabetical-list-of-idc-functions/1756.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
