#
# NOTE! Please use 'git ls-files -i --exclude-standard'
# command after changing this file, to see if there are
# any tracked files which get ignored after the change.
#

# Temp files (e.g. editors).
*~
*.sw[op]

# Compiled objects.
*.a
*.o
*.l[ao]
*.so
*.exe

*.d
!**/tmpfiles.d
!crosh/dev.d
*.depends
.deps
.libs

*.gch
*.gcda
*.gcno

# Common output files.
*.dump
*.out
*.test

# Protobuf files.
*.pb.cc
*.pb.h

# Python files.
*.pyc

# Debug (e.g. gdb).
.gdb_history
.gdbinit

core
cscope.*
tags
tags_sorted_by_file

# Patch files.
*.diff
*.patch
*.orig
*.rej

# Nested git repos.
/glbench/images/

# Cargo lock file.
Cargo.lock

# Cargo build directories.
target/

# VSCode source dirs
.vscode/

# Intellij project dirs
.idea

# clangd cache dir
.clangd
.cache
