---
name: "gdc-4.1"
section: "1"
platform: "linux"
package: "gdc-4.1"
version: "0.25-4.1.2-23.2"
release: "Debian 5.0 (Lenny)"
platforms: ["linux"]
url: "https://new.carta.tech/gdc-4.1"
---

# gdc-4.1(1)

D Front End for GCC

## NAME

gdc - D Front End for GCC

## SYNOPSIS

**gdc** *\[ -switch \]* files.d

Only the new options are listed here; gdc accepts mostly the same options as gcc.

## OPTIONS

- files.d

  - files.htm

  - files.html

  D source files

- files.o

  Object files to link in

- files.a

  Library files to link in

- \-frelease

  compile release version

- \-funittest

  compile in unit tests

- \-fdeprecated

  allow deprecated features

- \-fversion=ident

  compile in version code identified by ident

- \-femit-templates\[=full\|private\|none\|auto\]

  Controls whether or not template code is emitted.

  - full

    Emit templates, expecting multiple copies to be merged by the linker.

  - private

    Emit templates, but make them private to the translation unit.  The executable will have multiple copies of code and data.

  - none

    Do not emit templates at all.

  - auto

    For targets that support templates, the "full" mode is used.  Otherwise, the "private" mode is used.

- \-f\[no-\]bounds-check

  Controls array bounds checking

- \-fall-sources

  For each source file on the command line, semantically process each file preceding it.  Use this if compilation errors occur due to complicated circular module references.  This will slow compilation noticeably.

## SEE ALSO

**[gcc(1)](/gcc/1.md)**

## AUTHOR

Copyright (C) 2004 David Friedman
