/
CppCompileError.md
70 lines (60 loc) · 10.8 KB
/
CppCompileError.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# ([C++](Cpp.md)) [Compile error](CppCompileError.md)
[![xkcd #371: compiler complaint](compiler_complaint.png)](https://xkcd.com/371/)
[Error](CppError.md) emitted by the [compiler](CppCompiler.md), that
prevents program execution. A [compile warning](CppCompileWarning.md)
starts program execution anyway.
1. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [::swprintf has not been declared](CppCompileErrorSwprintfHasNotBeenDeclared.md)
2. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [\_algo.c: Call to undefined function 'rand'](CppCompileError_algoCcallToUndefinedFunctionRand.md)
3. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [\_algo.c: Cannot modify a const object](CppCompileError_algoCcannotModifyAconstObject.md)
4. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [\_algobase.h: Cannot convert 'const int' to 'MyClass \*'](CppCompileError_algobaseHcannotConvertConstIntToMyClassPtr.md)
5. ![?OKAY](PicYellow.png)![Command line](PicCl.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [\_popen is not a member of std](CppCompileError_popenIsNotAmemberOfStd.md)
6. ![TODO](PicTransparent.png)![Qt Creator](PicQtCreator.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) ['assert' was not declared in this scope](CppCompileErrorAssertWasNotDeclaredInThisScope.md)
7. ![OKAY](PicGreen.png)![Qt](PicQt.png)![Qt Creator](PicQtCreator.png)![Lubuntu](PicLubuntu.png)![Windows](PicWindows.png) [base class 'struct QtPrivate::AlignOf\_WorkaroundForI386Abi<double>' has a non-virtual destructor](CppCompileErrorBaseClassStructQtPrivateAlignOf_WorkaroundForI386AbiDoubleHasANonVirtualDestructor.md)
8. ![?FAIL](PicOrange.png)![Command line](PicCl.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [boost/filesystem.hpp: No such file or directory](CppCompileErrorBoostFilesystemHppNoSuchFileOrDirectory.md)
9. ![FAIL](PicRed.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [borland.hpp: Only member functions may be 'const' or 'volatile'](CppCompileErrorBorlandHppOnlyMemberFunctionsMayBeConstOrVolatile.md)
10. ![FAIL](PicRed.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [bzconfig.h: Unknown compiler](CppCompileErrorBzconfigHunknownCompiler.md)
11. ![OKAY](PicGreen.png)![Wt](PicWt.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png) [cc1plus: internal compiler error: Segmentation fault](CppCompileErrorCc1plusInternalCompilerErrorSegmentationFault.md)
12. ![?OKAY](PicYellow.png)![Command line](PicCl.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [CLK\_TCK was not declared in this scope](CppCompileErrorCLK_TCKwasNotDeclaredInThisScope.md)
13. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![NDS](PicNds.png)![ ](PicSpacer.png) ['consoleInitDefault' was not declared in this scope](CppCompileErrorConsoleInitDefaultNotDeclared.md)
14. ![FAIL](PicRed.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) ['Container::value\_type' is not a type](CppCompileErrorContainerValue_typeIsNotAtype.md)
15. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) ['cout' is not a member of 'std'](CppCompileErrorCoutIsNotAmemberOfStd.md)
16. ![OKAY](PicGreen.png)![Command line](PicCl.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [duplicate symbol](CppCompileErrorDuplicateSymbol.md)
17. ![FAIL](PicRed.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [enable\_if\_does\_not\_work\_on\_this\_compiler<void>](CppCompileErrorEnable_if_does_not_work_on_this_compilerVoid.md)
18. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) ['endl' is not a member of 'std'](CppCompileErrorEndlIsNotAmemberOfStd.md)
19. ![FAIL](PicRed.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [iterator.hpp: Invalid template argument list](CppCompileErrorIteratorHppInvalidTemplateArgumentList.md)
20. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [jconfig.h: No such file or directory](CppCompileErrorJconfigHnoSuchFileOrDirectory.md)
21. ![?OKAY](PicYellow.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [jpeglib.h: No such file or directory](CppCompileErrorJpeglibHnoSuchFileOrDirectory.md)
22. ![?FAIL](PicOrange.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) ['jpeg\_read\_image' was not declared in this scope](CppCompileErrorJpeg_read_imageWasNotDeclaredInThisScope.md)
23. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [Multithreaded RTL must be selected](CppCompileErrorMultithreadedRtlMustBeSelected.md)
24. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) ['MyPolicy::MyMethod' is not a direct base class of 'MyClass<MyPolicy>'](CppCompileErrorMyPolicyMyMethodIsNotAdirectBaseClassOfMyClassMyPolicy.md)
25. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [No matching function for call to 'ptr\_fun'](CppCompileErrorNoMatchingFunctionForCallToPtr_fun.md)
26. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [Only member functions may be 'const' or 'volatile'](CppCompileErrorOnlyMemberFunctionsMayBeConstOrVolatile.md)
27. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [openssl/conf.h: No such file or directory](CppCompileErrorOpensslConfHNoSuchFileOrDirectory.md)
28. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) ['operator+' not implemented in type 'std::map<int,double>' for arguments of type 'int'](CppCompileErrorOperatorPlusNotImplementedInTypeMapIntDoubleForArgumentsOfTypeInt.md)
29. ![?FAIL](PicOrange.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [QCanvas: No such file or directory](CppCompileErrorQCanvasNoSuchFileOrDirectory.md)
30. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [Request for member 'mX' in 'w', which is of non-class type 'Widget()'](CppCompileErrorErrorRequestForMemberWhichIsOfNonClassType.md)
31. ![?OKAY](PicYellow.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [shared\_ptr.hpp: Call to undefined function 'assert'](CppCompileErrorShared_ptrCallToUndefinedFunctionAssert.md)
32. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [shared\_ptr.hpp: Cannot convert 'Y \*' to 'Widget \*'](CppCompileErrorShared_ptrHppCannotConvertYptrToWidgetPtr.md)
33. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [Size of @\_STL@%vector%78\_STL@... is unknown or zero](CppCompileErrorSizeOfVector.md)
34. ![?FAIL](PicOrange.png)![Command line](PicCl.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [stdio.h:430: error: expected initializer before 'throw'](CppCompileErrorStdioHexpectedInitializerBeforeThrow.md)
35. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![NDS](PicNds.png)![ ](PicSpacer.png) ['SUB\_BG0\_CR' was not declared in this scope](CppCompileErrorSUB_BG0_CRnotDeclared.md)
36. ![OKAY](PicGreen.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [tuple\_basic.hpp: Multiple declaration for 'element<N,T>'](CppCompileErrorTuple_basicHppMultipleDeclarationForElementNT.md)
37. ![?OKAY](PicYellow.png)![Qt Creator](PicQtCreator.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [Undefined reference to '\[anything\]'](CppLinkError.md)
38. ![OKAY](PicGreen.png)![Qt Creator](PicQtCreator.png)![Cygwin](PicCygwin.png)![Windows](PicWindows.png)![ ](PicSpacer.png) [UnicodeQt4.h:197: error: call of overloaded 'toLower(UChar32&)' is ambiguous](CppCompileErrorUnicodeQt4H197Error.md)
39. ![FAIL](PicRed.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [utilities.hpp: Invalid template argument list](CppCompileErrorUtilitiesHppInvalidTemplateArgumentList.md)
40. ![FAIL](PicRed.png)![C++ Builder](PicCppBuilder.png)![Windows](PicWindows.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [Your compiler and/or configuration is unsupported by this verions of uBLAS](CppCompileErrorYourCompilerAndOrConfigurationIsUnsupportedByThisVerionsOfUblas.md)
41. ![?FAIL](PicOrange.png)![Command line](PicCl.png)![Ubuntu](PicUbuntu.png)![ ](PicSpacer.png)![ ](PicSpacer.png) [wchar.h:718: error: expected initializer before 'throw'](CppCompileErrorWcharHexpectedInitializerBeforeThrow.md)
## ![Qt Creator](PicQtCreator.png) How to let [compile warnings](CppCompileWarning.md) be treated like [compile errors](CppCompileError.md) in [Qt Creator](CppQtCreator.md)?
In the [project file](CppQtProjectFile.md), add the following line:
```
QMAKE_CXXFLAGS += -Werror
```
## [Advice](CppAdvice.md)
* Compile cleanly at high warning levels [1,3]
* Prefer [compile errors](CppCompileError.md) to [runtime errors](CppRuntimeError.md) [2,4]
# [References](CppReferences.md)
* [1] [Herb Sutter](CppHerbSutter.md), [Andrei Alexandrescu](CppAndreiAlexandrescu.md). C++ coding standards: 101 rules, guidelines, and best practices. ISBN: 0-32-111358-6. Item 1: 'Compile cleanly at high warning levels'.
* [2] [Herb Sutter](CppHerbSutter.md), [Andrei Alexandrescu](CppAndreiAlexandrescu.md). C++ coding standards: 101 rules, guidelines, and best practices. ISBN: 0-32-111358-6. Item 14: 'Prefer compile- and link-time errors to run-time errors'.
* [3] [Linus Torvalds](LinusTorvalds.md). [Re:[PATCH] Don't compare unsigned variable for <0 in sys\_prctl()](http://linux.derkeiler.com/Mailing-Lists/Kernel/2006-11/msg08325.html). 2006-11-28. Retrieved on 2010-09-20. 'Friends don't let friends use [gcc] "-W"'
* [4] [C++ Core Guidelines: P.5: Prefer compile-time checking to run-time checking](https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#p5-prefer-compile-time-checking-to-run-time-checking)