[lld] r218197 - Silence these C4715 warnings from Visual C++ (NFC)

Yaron Keren yaron.keren at gmail.com
Sat Sep 20 22:18:07 PDT 2014


Fixed in r218198, thanks!


2014-09-21 8:12 GMT+03:00 David Blaikie <dblaikie at gmail.com>:

>
>
> On Sat, Sep 20, 2014 at 9:13 PM, Yaron Keren <yaron.keren at gmail.com>
> wrote:
>
>> Author: yrnkrn
>> Date: Sat Sep 20 23:13:45 2014
>> New Revision: 218197
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=218197&view=rev
>> Log:
>> Silence these C4715 warnings from Visual C++ (NFC)
>>
>> llvm\tools\lld\lib\readerwriter\macho\macholinkingcontext.cpp(647):
>> warning C4715: 'lld::MachOLinkingContext::exportSymbolNamed' :
>> not all control paths return a value
>>
>>
>> llvm\tools\lld\lib\readerwriter\macho\machonormalizedfilefromatoms.cpp(723):
>> warning C4715: '`anonymous namespace'::Util::getSymbolTableRegion' :
>> not all control paths return a value
>>
>> While all enum values do appear in the switch, an uninitialized or
>> corrupted
>> enum variable would not be caught without the default: case in the switch.
>>
>
> Usually the right way to deal with this is to put the unreachable /after/
> the switch, rather than adding a default (& you don't need a return after
> an unreachable in any context)
>
> Your change will probably cause a -Wcovered-switch-default warning/break,
> unfortunately.
>
>
>>
>>
>> Modified:
>>     lld/trunk/lib/ReaderWriter/MachO/MachOLinkingContext.cpp
>>     lld/trunk/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp
>>
>> Modified: lld/trunk/lib/ReaderWriter/MachO/MachOLinkingContext.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/MachO/MachOLinkingContext.cpp?rev=218197&r1=218196&r2=218197&view=diff
>>
>> ==============================================================================
>> --- lld/trunk/lib/ReaderWriter/MachO/MachOLinkingContext.cpp (original)
>> +++ lld/trunk/lib/ReaderWriter/MachO/MachOLinkingContext.cpp Sat Sep 20
>> 23:13:45 2014
>> @@ -643,6 +643,8 @@ bool MachOLinkingContext::exportSymbolNa
>>      return _exportedSymbols.count(sym);
>>    case ExportMode::blackList:
>>      return !_exportedSymbols.count(sym);
>> +  default:
>> +    llvm_unreachable("_exportMode unknown enum value");
>>    }
>>  }
>>
>>
>> Modified:
>> lld/trunk/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/lld/trunk/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp?rev=218197&r1=218196&r2=218197&view=diff
>>
>> ==============================================================================
>> --- lld/trunk/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp
>> (original)
>> +++ lld/trunk/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp Sat
>> Sep 20 23:13:45 2014
>> @@ -719,6 +719,9 @@ std::error_code Util::getSymbolTableRegi
>>        return std::error_code();
>>      }
>>      break;
>> +  default:
>> +    llvm_unreachable("atom->scope() unknown enum value");
>> +    return std::error_code();
>>    }
>>  }
>>
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140921/9a94318d/attachment.html>


More information about the llvm-commits mailing list