# C/C++ Project properties: Preprocessor Include Paths, Macros, etc. - Entries tab

Include paths and preprocessor macros for C/C++ indexer can be inspected and set up on the project property page "Preprocessor Include Paths, Macros, etc.", "Entries" tab. This tab presents Language Settings Providers employed by Scanner Discovery to provide include paths, macros and other Language Settings.

Note that the entries could be set also on an individual resource, such as file or folder. Open file or folder properties to inspect resource-specific entries. The entries on a folder or a project will apply to all subfolders and C/C++ files under it - unless overriden on a lower level.

"Entries" tab shows a list of Language Settings Providers for each language. A provider node can be expanded to show include paths and macros defined by the provider. A user can add custom entries here under "User Setting Entries" provider.

Entries tab controls
Group | Description
--- | ---
Configuration | Click here for a description.
Manage Configurations... | Click here for a description.
Languages | Lists all of the languages defined by the toolchain. Select a language to see the list of applicable providers.
Setting Entries | Lists all of the providers for the selected language and entries supplied by them. Expand a provider node to see the entries.
Show built-in values | Disable checkbox "Show built-in values" to filter out built-in setting entries in the view. Built-in compiler entries need to be provided to C/C++ indexer but not to the compiler during the build.
Add... | Add an entry to the provider. Enabled only when the provider supports the operation.
Edit... | Edit the selected settings entry. Enabled only when the provider supports the operation.
Delete | Delete the selected settings entry. Enabled only when the provider supports the operation.
Move Up | Moves the selected entry higher in the list. Enabled only when the provider supports the operation
Move Down | Moves the selected entry lower in the list. Enabled only when the provider supports the operation

## Adding and Editing entries

Use Add... and Edit... buttons to add or modify the entries. Both buttons open similar dialog described here.

Add/Edit entries dialog
Group | Description
--- | ---
Kind of Setting Entry | A dropbox to select desired kind of setting entry. This dropbox is not available in "Edit" mode.
Kind of path | A dropbox to select desired kind of path. This dropbox is shown for path entries only.
Path | Enter path value of the entry. This field is shown for path entries only.
Open folder button | Use folder button to navigate folder structure to select existing path. The provided dialog varies depending on the kind of path selected in the corresponding dropbox. This button is shown for path entries only.
Variables | Select one of the build or environment variables provided by CDT to embed into "Path" field. This button is enabled only for File System Paths.
Treat as built-in | Enable this checkbox to mark the entry as built-in. Built-in compiler entries need to be provided to C/C++ indexer but not to the compiler during the build.
Contains system headers | Enable if the include path is a system directory which contains system headers. This checkbox is shown for Include Directories only.
Framework folder | Mac OS has a unique way of specifying include directories for Frameworks. Enable if the included directory is Mac Framework directory. This checkbox is shown for Include Directories only.
Name | Shown for Preprocessor Macro only. Specify the macro name here.
Value | Shown for Preprocessor Macro only. Specify the macro value here.

Scanner Discovery
C/C++ Indexer

Setting up include paths and macros for C/C++ indexer

C/C++ Preferences: Scanner Discovery
C/C++ Project properties: Preprocessor Include Paths, Macros, etc. - Providers tab