On Apr 15, 2009, at 9:59 AM, steve naroff wrote: > I'm not seeing any crashes like this. > > I also don't see how the stack trace below could be related to a > Sema check (i.e. it doesn't mutate the AST and shouldn't effect code > gen in any way). > > Nevertheless, I will revert it since I'm working on it anyway...
Thanks. That was just a wild guess, plus the fact the ELi's little test case caused the same crash. - fariborz > > > snaroff > > On Apr 15, 2009, at 12:51 PM, Fariborz Jahanian wrote: > >> I am seeing lots of crashes like this: >> >> build/Objects-normal/x86_64/IBViewEditorWindowController.o >> Assertion failed: (0 < OldLabelID && OldLabelID <= >> LabelIDList.size() && "Old label ID out of range."), function >> RemapLabel, file /Volumes/sandbox/llvm/include/llvm/CodeGen/ >> MachineModuleInfo.h, line 189. >> 0 clang-cc 0x00d943d3 _ZL15PrintStackTracePv + 45 >> 1 clang-cc 0x00d94945 _ZL13SignalHandleri + 351 >> 2 libSystem.B.dylib 0x9107eadb _sigtramp + 43 >> 3 libSystem.B.dylib 0xffffffff _sigtramp + 1861752143 >> 4 libSystem.B.dylib 0x910f9a33 raise + 26 >> 5 libSystem.B.dylib 0x9110daab abort + 93 >> 6 libSystem.B.dylib 0x910fbb6a __assert_rtn + 252 >> 7 clang-cc 0x00aa2e80 >> llvm::MachineModuleInfo::RemapLabel(unsigned int, unsigned int) + 98 >> 8 clang-cc 0x00aa16f4 >> llvm >> ::DebugLabelFolder::runOnMachineFunction(llvm::MachineFunction&) + >> 304 >> 9 clang-cc 0x00a89752 >> llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 64 >> 10 clang-cc 0x00d1f3d6 >> llvm::FPPassManager::runOnFunction(llvm::Function&) + 288 >> 11 clang-cc 0x00d1f8f8 >> llvm::FunctionPassManagerImpl::run(llvm::Function&) + 112 >> 12 clang-cc 0x00d1fac8 >> llvm::FunctionPassManager::run(llvm::Function&) + 156 >> 13 clang-cc 0x0003ee92 (anonymous >> namespace)::BackendConsumer::EmitAssembly() + 812 >> 14 clang-cc 0x0003ef83 (anonymous >> namespace >> )::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) + 151 >> 15 clang-cc 0x001b981f >> clang::ParseAST(clang::Preprocessor&, clang::ASTConsumer*, >> clang::ASTContext&, bool, bool) + 463 >> 16 clang-cc 0x0007c998 >> _ZL16ProcessInputFileRN5clang12PreprocessorERNS_19PreprocessorFactoryERKSs11ProgActions >> >> + 3027 >> 17 clang-cc 0x0008043c main + 2334 >> 18 clang-cc 0x0002ea69 start + 53 >> Stack dump: >> >> Can we remove this patch, if it is causing it? >> >> - Thanks, Fariborz >> >> On Apr 15, 2009, at 9:45 AM, steve naroff wrote: >> >>> >>> On Apr 15, 2009, at 12:08 PM, Eli Friedman wrote: >>> >>>> On Wed, Apr 15, 2009 at 7:38 AM, Steve Naroff <snar...@apple.com> >>>> wrote: >>>>> Author: snaroff >>>>> Date: Wed Apr 15 09:38:36 2009 >>>>> New Revision: 69165 >>>>> >>>>> URL: http://llvm.org/viewvc/llvm-project?rev=69165&view=rev >>>>> Log: >>>>> Fix <rdar://problem/6791490> [clang10 regression] [sema] invalid >>>>> illegal jump diagnostic. >>>>> >>>>> caused by: <rdar://problem/6252084> [sema] jumps into Obj-C >>>>> exception blocks should be disallowed. >>>> >>>> Ah, hmm, I figured there was a problem like this; I didn't reply >>>> earlier because I didn't get a chance to test. >>>> >>>>> Sema::RecursiveCalcLabelScopes() and >>>>> Sema::RecursiveCalcJumpScopes() need to pop the ScopeStack within >>>>> the statement iteration loop (was outside the loop). >>>> >>>> That looks very wrong... if I'm not mistaken, the following >>>> testcase >>>> breaks. >>>> >>>> int test4(int x) { >>>> goto L; // expected-error{{illegal jump}} >>>> int a[x]; >>>> test4(x); >>>> L: >>>> return sizeof a; >>>> } >>>> >>>> The correct solution is to use the correct parent in the >>>> PopScopeMap, >>>> which for an @try is either the @try itself or the containing >>>> ObjCAtTryStmt. >>>> >>> >>> O.k. I'll take a look. I'll also add the test case above (which >>> would >>> have been helpful). >>> >>> Thanks, >>> >>> snaroff >>> >>>> -Eli >>> >>> _______________________________________________ >>> cfe-commits mailing list >>> cfe-commits@cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >> > _______________________________________________ cfe-commits mailing list cfe-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits