[llvm] r188524 - Fixing a warning about control reaching the end of a non-void function.
Matt Beaumont-Gay
matthewbg at google.com
Fri Aug 16 10:35:54 PDT 2013
On Thu, Aug 15, 2013 at 7:50 PM, Aaron Ballman <aaron at aaronballman.com> wrote:
> On Thu, Aug 15, 2013 at 10:46 PM, Matt Beaumont-Gay
> <matthewbg at google.com> wrote:
>> On Thu, Aug 15, 2013 at 6:43 PM, Aaron Ballman <aaron at aaronballman.com> wrote:
>>> Author: aaronballman
>>> Date: Thu Aug 15 20:43:31 2013
>>> New Revision: 188524
>>>
>>> URL: http://llvm.org/viewvc/llvm-project?rev=188524&view=rev
>>> Log:
>>> Fixing a warning about control reaching the end of a non-void function.
>>>
>>> Modified:
>>> llvm/trunk/utils/TableGen/CodeGenInstruction.cpp
>>>
>>> Modified: llvm/trunk/utils/TableGen/CodeGenInstruction.cpp
>>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/TableGen/CodeGenInstruction.cpp?rev=188524&r1=188523&r2=188524&view=diff
>>> ==============================================================================
>>> --- llvm/trunk/utils/TableGen/CodeGenInstruction.cpp (original)
>>> +++ llvm/trunk/utils/TableGen/CodeGenInstruction.cpp Thu Aug 15 20:43:31 2013
>>> @@ -192,6 +192,7 @@ CGIOperandList::ParseOperandName(const s
>>>
>>> // Otherwise, didn't find it!
>>> PrintFatalError(TheDef->getName() + ": unknown suboperand name in '" + Op + "'");
>>> + return std::make_pair(0U, 0U);
>>
>> PrintFatalError is marked noreturn; what compiler complained about this?
>
> clang-x86_64-darwin11-self-mingw32
>From Compiler.h:
#ifdef __GNUC__
#define LLVM_ATTRIBUTE_NORETURN __attribute__((noreturn))
#elif defined(_MSC_VER)
#define LLVM_ATTRIBUTE_NORETURN __declspec(noreturn)
#else
#define LLVM_ATTRIBUTE_NORETURN
#endif
>From InitPreprocessor.cpp:
if (!LangOpts.MicrosoftMode) {
// Currently claim to be compatible with GCC 4.2.1-5621, but only if we're
// not compiling for MSVC compatibility
Builder.defineMacro("__GNUC_MINOR__", "2");
Builder.defineMacro("__GNUC_PATCHLEVEL__", "1");
Builder.defineMacro("__GNUC__", "4");
Builder.defineMacro("__GXX_ABI_VERSION", "1002");
}
Maybe the first condition for LLVM_ATTRIBUTE_NORETURN should be "#if
defined(__GNUC__) || defined(__clang__)"?
More information about the llvm-commits
mailing list