Skip to content

Instantly share code, notes, and snippets.

@tattlemuss
Last active August 29, 2015 14:08
Show Gist options
  • Save tattlemuss/265091a2252b11ad4030 to your computer and use it in GitHub Desktop.
Save tattlemuss/265091a2252b11ad4030 to your computer and use it in GitHub Desktop.
count number of post-processed lines in standard C/C++ include files
# sample output on my windows mingw setup
cpp:algorithm, 8196
cpp:array, 13
cpp:atomic, 2464
cpp:backward, 4
cpp:bits, 4
cpp:bitset, 9187
cpp:cassert, 27
cpp:ccomplex, 18329
cpp:cctype, 154
cpp:cerrno, 27
cpp:cfenv, 13
cpp:cfloat, 12
cpp:chrono, 13
cpp:cinttypes, 13
cpp:ciso646, 6
cpp:climits, 18
cpp:clocale, 90
cpp:cmath, 1448
cpp:complex, 18311
cpp:complex.h, 196
cpp:condition_variable, 13
cpp:csetjmp, 67
cpp:csignal, 66
cpp:cstdarg, 40
cpp:cstdbool, 16
cpp:cstddef, 35
cpp:cstdint, 13
cpp:cstdio, 546
cpp:cstdlib, 372
cpp:cstring, 228
cpp:ctgmath, 16
cpp:ctime, 148
cpp:cwchar, 760
cpp:cwctype, 133
cpp:cxxabi.h, 769
cpp:debug, 4
cpp:decimal, 4
cpp:deque, 5192
cpp:exception, 100
cpp:ext, 4
cpp:fenv.h, 90
cpp:forward_list, 13
cpp:fstream, 17584
cpp:functional, 627
cpp:future, 13
cpp:initializer_list, 9
cpp:iomanip, 9647
cpp:ios, 13327
cpp:iosfwd, 1083
cpp:iostream, 15427
cpp:istream, 15396
cpp:iterator, 15573
cpp:limits, 1309
cpp:list, 4002
cpp:locale, 15741
cpp:map, 5586
cpp:memory, 3574
cpp:mingw32, 4
cpp:mutex, 13
cpp:new, 166
cpp:numeric, 382
cpp:ostream, 14002
cpp:parallel, 4
cpp:profile, 4
cpp:queue, 8537
cpp:random, 13
cpp:ratio, 13
cpp:regex, 13
cpp:set, 5383
cpp:sstream, 16008
cpp:stack, 5323
cpp:stdexcept, 8115
cpp:streambuf, 9966
cpp:string, 8001
cpp:system_error, 13
cpp:tgmath.h, 432
cpp:thread, 13
cpp:tr1, 4
cpp:tuple, 13
cpp:type_traits, 13
cpp:typeindex, 13
cpp:typeinfo, 221
cpp:unordered_map, 13
cpp:unordered_set, 13
cpp:utility, 199
cpp:valarray, 12311
cpp:vector, 5357
c:BaseClasses, 4
c:Bdatif.h, 27719
c:DShowIDL, 4
c:DxDiag.h, 15219
c:GL, 4
c:Iwstdec.h, 96
c:Mpeg2Bits.h, 38
c:Mpeg2Error.h, 55
c:Mstvca.h, 29567
c:Mstve.h, 24320
c:Msvidctl.h, 37105
c:Msvidctl.tlb, 668
c:PixPlugin.h, 89
c:Segment.h, 34956
c:Tuner.tlb, 361
c:_mingw.h, 9
c:accctrl.h, 199
c:aclapi.h, 15427
c:aclui.h, 16389
c:activecf.h, 12
c:adsprop.h, 9
c:afxres.h, 15177
c:amaudio.h, 16264
c:amparse.h, 22
c:amstream.h, 20113
c:amva.h, 62
c:amvideo.h, 17663
c:ansidecl.h, 6
c:assert.h, 14
c:atsmedia.h, 8
c:audevcod.h, 33
c:austream.h, 16054
c:autosprintf.h, 5
c:aviriff.h, 2738
c:aygshell.h, 11
c:basetsd.h, 41
c:basetyps.h, 38
c:bdaiface.h, 18770
c:bdamedia.h, 450
c:bdatypes.h, 34
c:bfd.h, 4771
c:bfdlink.h, 735
c:cderr.h, 11
c:cguid.h, 86
c:cmnquery.h, 9
c:comcat.h, 15268
c:comlite.h, 6
c:commctrl.h, 946
c:commdlg.h, 285
c:complex.h, 156
c:conio.h, 38
c:control.h, 20
c:cpl.h, 45
c:cplext.h, 11
c:ctype.h, 105
c:custcntl.h, 83
c:d3d.h, 18410
c:d3d8.h, 16678
c:d3d8caps.h, 87
c:d3d8types.h, 999
c:d3d9.h, 16751
c:d3d9caps.h, 96
c:d3d9types.h, 1034
c:d3dcaps.h, 16624
c:d3drm.h, 20717
c:d3drmdef.h, 18002
c:d3drmobj.h, 20433
c:d3drmwin.h, 20749
c:d3dtypes.h, 17604
c:d3dvec.inl, 643
c:d3dx.h, 20512
c:d3dx8.h, 20562
c:d3dx8core.h, 20565
c:d3dx8effect.h, 20565
c:d3dx8math.h, 20565
c:d3dx8math.inl, 636
c:d3dx8mesh.h, 20565
c:d3dx8shape.h, 20565
c:d3dx8tex.h, 20565
c:d3dx9.h, 23631
c:d3dx9anim.h, 718
c:d3dx9core.h, 23634
c:d3dx9effect.h, 23634
c:d3dx9math.h, 23634
c:d3dx9math.inl, 651
c:d3dx9mesh.h, 23634
c:d3dx9shader.h, 23634
c:d3dx9shape.h, 23634
c:d3dx9tex.h, 23634
c:d3dx9xof.h, 23634
c:d3dxcore.h, 18725
c:d3dxerr.h, 6
c:d3dxmath.h, 20094
c:d3dxmath.inl, 636
c:d3dxshapes.h, 18484
c:d3dxsprite.h, 18451
c:dbt.h, 52
c:dde.h, 48
c:ddeml.h, 152
c:ddk, 4
c:ddraw.h, 16418
c:ddstream.h, 17237
c:devguid.h, 68
c:dhcpcsdk.h, 11
c:dinput.h, 16547
c:dinputd.h, 312
c:dir.h, 316
c:direct.h, 343
c:dirent.h, 410
c:dis-asm.h, 5491
c:dlgs.h, 18
c:dls1.h, 105
c:dls2.h, 16
c:dmdls.h, 275
c:dmerror.h, 6
c:dmksctrl.h, 15245
c:dmo.h, 16316
c:dmodshow.h, 16235
c:dmoimpl.h, 552
c:dmoreg.h, 16259
c:dmort.h, 39
c:dmplugin.h, 18940
c:dmusbuff.h, 23
c:dmusicc.h, 17049
c:dmusicf.h, 15764
c:dmusici.h, 18940
c:dmusics.h, 17221
c:docobj.h, 137
c:dos.h, 330
c:dpaddr.h, 15976
c:dplay.h, 15931
c:dplay8.h, 15972
c:dplobby.h, 16361
c:dplobby8.h, 15337
c:dpnathlp.h, 15211
c:dsadmin.h, 9
c:dsclient.h, 9
c:dsconf.h, 112
c:dsetup.h, 15332
c:dsgetdc.h, 9
c:dshow.h, 19156
c:dshowasf.h, 16289
c:dsound.h, 16235
c:dsquery.h, 9
c:dsrole.h, 9
c:dv.h, 20
c:dvdevcod.h, 46
c:dvdmedia.h, 1160
c:dvoice.h, 16872
c:dvp.h, 15374
c:dx7todx8.h, 6
c:dxerr8.h, 21
c:dxerr9.h, 21
c:dxfile.h, 152
c:dxtrans.h, 24824
c:dxva.h, 883
c:edevctrl.h, 271
c:edevdefs.h, 11
c:errno.h, 14
c:errorrep.h, 11
c:errors.h, 14
c:evcode.h, 16
c:excpt.h, 1898
c:exdisp.h, 16240
c:exdispid.h, 11
c:fcntl.h, 315
c:fenv.h, 55
c:float.h, 6
c:fltdefs.h, 9
c:gdb, 4
c:gdiplus, 4
c:gdiplus.h, 6136
c:getopt.h, 43
c:gettext-po.h, 545
c:gmon.h, 64
c:httpext.h, 15222
c:icm.h, 11
c:iconv.h, 699
c:idispids.h, 11
c:il21dec.h, 37
c:imagehlp.h, 243
c:imm.h, 166
c:initguid.h, 48
c:intshcut.h, 82
c:inttypes.h, 103
c:io.h, 313
c:ipexport.h, 41
c:iphlpapi.h, 495
c:ipifcons.h, 9
c:ipinfoid.h, 9
c:iprtrmib.h, 220
c:iptypes.h, 182
c:ipxconst.h, 9
c:ipxrtdef.h, 23
c:ipxtfflt.h, 9
c:isguids.h, 18
c:ks.h, 22
c:ksguid.h, 5
c:ksmedia.h, 11
c:ksproxy.h, 13
c:ksuuids.h, 222
c:largeint.h, 15175
c:libcharset.h, 14
c:libgen.h, 19
c:libintl.h, 576
c:libltdl, 4
c:limits.h, 12
c:lm.h, 1890
c:lmaccess.h, 453
c:lmalert.h, 37
c:lmapibuf.h, 21
c:lmat.h, 31
c:lmaudit.h, 150
c:lmbrowsr.h, 77
c:lmchdev.h, 43
c:lmconfig.h, 24
c:lmcons.h, 11
c:lmerr.h, 20
c:lmerrlog.h, 26
c:lmmsg.h, 23
c:lmremutl.h, 34
c:lmrepl.h, 74
c:lmserver.h, 559
c:lmshare.h, 129
c:lmsname.h, 11
c:lmstats.h, 77
c:lmsvc.h, 45
c:lmuse.h, 52
c:lmuseflg.h, 11
c:lmwksta.h, 186
c:localcharset.h, 8
c:locale.h, 55
c:ltdl.h, 532
c:lzexpand.h, 24
c:malloc.h, 279
c:mapi.h, 99
c:math.h, 398
c:mbctype.h, 40
c:mbstring.h, 104
c:mciavi.h, 11
c:mcx.h, 48
c:mediaerr.h, 6
c:mediaobj.h, 16160
c:medparam.h, 17346
c:mem.h, 148
c:memory.h, 149
c:mgm.h, 11
c:mgmtapi.h, 15278
c:mixerocx.h, 15448
c:mlang.h, 15503
c:mmreg.h, 1023
c:mmstream.h, 15687
c:mmsystem.h, 975
c:mpconfig.h, 120
c:mpeg2data.h, 20192
c:mpegtype.h, 1127
c:mprapi.h, 443
c:mq.h, 156
c:msacm.h, 224
c:mshtml.h, 705
c:mswsock.h, 21
c:multimon.h, 71
c:nb30.h, 100
c:nddeapi.h, 52
c:nspapi.h, 68
c:ntdef.h, 43
c:ntdll.h, 20
c:ntdsapi.h, 9
c:ntdsbcli.h, 9
c:ntldap.h, 9
c:ntsecapi.h, 495
c:ntsecpkg.h, 3130
c:oaidl.h, 15162
c:objbase.h, 15170
c:objfwd.h, 93
c:objidl.h, 1520
c:objsafe.h, 19
c:objsel.h, 9
c:ocidl.h, 15889
c:odbcinst.h, 275
c:ole.h, 290
c:ole2.h, 15157
c:ole2ver.h, 11
c:oleacc.h, 82
c:oleauto.h, 15162
c:olectl.h, 15995
c:olectlid.h, 116
c:oledlg.h, 15797
c:oleidl.h, 487
c:pbt.h, 11
c:playlist.h, 16772
c:poppack.h, 8
c:powrprof.h, 144
c:process.h, 235
c:profil.h, 19
c:profile.h, 6
c:prsht.h, 123
c:psapi.h, 102
c:pshpack1.h, 8
c:pshpack2.h, 8
c:pshpack4.h, 8
c:pshpack8.h, 8
c:pthread.h, 695
c:qedit.h, 1140
c:qnetwork.h, 547
c:rapi.h, 50
c:ras.h, 436
c:rasdlg.h, 558
c:raserror.h, 11
c:rassapi.h, 146
c:reason.h, 11
c:regbag.h, 15982
c:regstr.h, 23
c:richedit.h, 266
c:richole.h, 81
c:rmxfguid.h, 213
c:rmxftmpl.h, 341
c:routprot.h, 9
c:rpc.h, 15166
c:rpcdce.h, 318
c:rpcdce2.h, 344
c:rpcdcep.h, 111
c:rpcndr.h, 556
c:rpcnsi.h, 51
c:rpcnsip.h, 28
c:rpcnterr.h, 11
c:rpcproxy.h, 15268
c:rtutils.h, 9
c:sbe.h, 17319
c:schannel.h, 472
c:sched.h, 237
c:schnlsp.h, 486
c:scrnsave.h, 36
c:sddl.h, 11
c:search.h, 61
c:secext.h, 12
c:security.h, 3130
c:semaphore.h, 49
c:servprov.h, 27
c:setjmp.h, 28
c:setupapi.h, 1682
c:share.h, 12
c:shellapi.h, 180
c:shldisp.h, 56
c:shlguid.h, 80
c:shlobj.h, 16801
c:shlwapi.h, 17240
c:signal.h, 23
c:snmp.h, 15258
c:specstrings.h, 12
c:sql.h, 207
c:sqlext.h, 334
c:sqltypes.h, 80
c:sqlucode.h, 334
c:sspi.h, 859
c:stdint.h, 60
c:stdio.h, 433
c:stdlib.h, 240
c:stm.h, 11
c:string.h, 141
c:strings.h, 144
c:strmif.h, 1101
c:strsafe.h, 4281
c:subauth.h, 145
c:svcguid.h, 11
c:symcat.h, 6
c:sys, 4
c:tchar.h, 15
c:time.h, 103
c:tlhelp32.h, 100
c:tmschema.h, 669
c:tune.h, 25349
c:tuner.h, 24254
c:tvratings.h, 16342
c:unistd.h, 445
c:unknwn.h, 15166
c:userenv.h, 56
c:usp10.h, 15357
c:utime.h, 174
c:uuids.h, 1559
c:uxtheme.h, 955
c:values.h, 6
c:varargs.h, 6
c:vfw.h, 15825
c:vfwmsgs.h, 6
c:vidcap.h, 24
c:videoacc.h, 16867
c:vmr9.h, 166
c:vpconfig.h, 117
c:vpnotify.h, 53
c:vptype.h, 57
c:w32api.h, 12
c:wchar.h, 580
c:wctype.h, 70
c:winable.h, 65
c:winbase.h, 1377
c:winber.h, 47
c:wincon.h, 148
c:wincrypt.h, 422
c:windef.h, 1872
c:windns.h, 358
c:windows.h, 15163
c:windowsx.h, 11
c:winerror.h, 11
c:wingdi.h, 1686
c:wininet.h, 15546
c:winioctl.h, 368
c:winldap.h, 823
c:winnetwk.h, 145
c:winnls.h, 198
c:winnt.h, 1760
c:winperf.h, 70
c:winreg.h, 82
c:winresrc.h, 4242
c:winsnmp.h, 15331
c:winsock.h, 14710
c:winsock2.h, 15166
c:winspool.h, 504
c:winsvc.h, 194
c:winuser.h, 1441
c:winver.h, 39
c:ws2spi.h, 15335
c:ws2tcpip.h, 15297
c:wsahelp.h, 15732
c:wsipx.h, 21
c:wsnetbs.h, 17
c:wtsapi32.h, 11
c:wtypes.h, 15168
c:xprtdefs.h, 11
c:zconf.h, 27
c:zlib.h, 307
c:zmouse.h, 9
# Pipe standard includes into cpp and count the number of lines of code included
# Apologies, my sh-fu is weak.
for file in `ls /c/MinGW/lib/gcc/mingw32/4.8.1/include/c++`
do
res=`echo "#include <$file>" | cpp.exe -xc++ 2> /dev/null | wc -l`
if [ "$?" -eq "0" ]; then
echo cpp:$file,$res
fi
done
for file in `ls /c/MinGW/include/`
do
res=`echo "#include <$file>" | cpp.exe 2> /dev/null | wc -l`
if [ "$?" -eq "0" ]; then
echo c:$file,$res
fi
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment