[llvm-bugs] [Bug 25404] New: Crash on typedef in OpenCL 2.0

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Nov 4 15:47:12 PST 2015


https://llvm.org/bugs/show_bug.cgi?id=25404

            Bug ID: 25404
           Summary: Crash on typedef in OpenCL 2.0
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Frontend
          Assignee: unassignedclangbugs at nondot.org
          Reporter: Matthew.Arsenault at amd.com
                CC: llvm-bugs at lists.llvm.org
    Classification: Unclassified

Created attachment 15220
  --> https://llvm.org/bugs/attachment.cgi?id=15220&action=edit
CL testcase

A file containing:

typedef atomic_int atomic_flag;


asserts when trying to compile OpenCL 2.0:

clang-3.8:
/home/marsenau/src/llvm/tools/clang/lib/Basic/SourceManager.cpp:1411:
SrcMgr::CharacteristicKind
clang::SourceManager::getFileCharacteristic(clang::SourceLocation) const:
Assertion `Loc.isValid() && "Can't get file characteristic of invalid loc!"'
failed.
#0 0x2638c4e llvm::sys::PrintStackTrace(llvm::raw_ostream&)
/home/marsenau/src/llvm/lib/Support/Unix/Signals.inc:404:15
#1 0x2639de9 PrintStackTraceSignalHandler(void*)
/home/marsenau/src/llvm/lib/Support/Unix/Signals.inc:463:1
#2 0x26387b3 llvm::sys::RunSignalHandlers()
/home/marsenau/src/llvm/lib/Support/Signals.cpp:35:5
#3 0x263a26f SignalHandler(int)
/home/marsenau/src/llvm/lib/Support/Unix/Signals.inc:211:1
#4 0x7f541d0e9340 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x10340)
#5 0x7f541c311cc9 gsignal
/build/buildd/eglibc-2.19/signal/../nptl/sysdeps/unix/sysv/linux/raise.c:56:0
#6 0x7f541c3150d8 abort /build/buildd/eglibc-2.19/stdlib/abort.c:91:0
#7 0x7f541c30ab86 __assert_fail_base
/build/buildd/eglibc-2.19/assert/assert.c:92:0
#8 0x7f541c30ac32 (/lib/x86_64-linux-gnu/libc.so.6+0x2fc32)
#9 0x278eb84 clang::SourceManager::getFileCharacteristic(clang::SourceLocation)
const /home/marsenau/src/llvm/tools/clang/lib/Basic/SourceManager.cpp:1412:41
#10 0x2785061 clang::SourceManager::isInSystemHeader(clang::SourceLocation)
const
/home/marsenau/src/llvm/tools/clang/include/clang/Basic/SourceManager.h:1326:12
#11 0x4150b85 clang::Sema::MergeTypedefNameDecl(clang::TypedefNameDecl*,
clang::LookupResult&)
/home/marsenau/src/llvm/tools/clang/lib/Sema/SemaDecl.cpp:2028:8
#12 0x416768c clang::Sema::ActOnTypedefNameDecl(clang::Scope*,
clang::DeclContext*, clang::TypedefNameDecl*, clang::LookupResult&, bool&)
/home/marsenau/src/llvm/tools/clang/lib/Sema/SemaDecl.cpp:5201:28
#13 0x415fab1 clang::Sema::ActOnTypedefDeclarator(clang::Scope*,
clang::Declarator&, clang::DeclContext*, clang::TypeSourceInfo*,
clang::LookupResult&)
/home/marsenau/src/llvm/tools/clang/lib/Sema/SemaDecl.cpp:5141:19
#14 0x415e8bd clang::Sema::HandleDeclarator(clang::Scope*, clang::Declarator&,
llvm::MutableArrayRef<clang::TemplateParameterList*>)
/home/marsenau/src/llvm/tools/clang/lib/Sema/SemaDecl.cpp:4914:11
#15 0x415dc3e clang::Sema::ActOnDeclarator(clang::Scope*, clang::Declarator&)
/home/marsenau/src/llvm/tools/clang/lib/Sema/SemaDecl.cpp:4579:15
#16 0x3d293ff
clang::Parser::ParseDeclarationAfterDeclaratorAndAttributes(clang::Declarator&,
clang::Parser::ParsedTemplateInfo const&, clang::Parser::ForRangeInit*)
/home/marsenau/src/llvm/tools/clang/lib/Parse/ParseDecl.cpp:1934:16
#17 0x3d28038 clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&, unsigned
int, clang::SourceLocation*, clang::Parser::ForRangeInit*)
/home/marsenau/src/llvm/tools/clang/lib/Parse/ParseDecl.cpp:1809:21
#18 0x3d239dc clang::Parser::ParseSimpleDeclaration(unsigned int,
clang::SourceLocation&, clang::Parser::ParsedAttributesWithRange&, bool,
clang::Parser::ForRangeInit*)
/home/marsenau/src/llvm/tools/clang/lib/Parse/ParseDecl.cpp:1541:10
#19 0x3d2372d clang::Parser::ParseDeclaration(unsigned int,
clang::SourceLocation&, clang::Parser::ParsedAttributesWithRange&)
/home/marsenau/src/llvm/tools/clang/lib/Parse/ParseDecl.cpp:1486:12
#20 0x3d01eec
clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&,
clang::ParsingDeclSpec*)
/home/marsenau/src/llvm/tools/clang/lib/Parse/Parser.cpp:743:14
#21 0x3d01441
clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&)
/home/marsenau/src/llvm/tools/clang/lib/Parse/Parser.cpp:593:12
#22 0x3cfcec7 clang::ParseAST(clang::Sema&, bool, bool)
/home/marsenau/src/llvm/tools/clang/lib/Parse/ParseAST.cpp:151:7
#23 0x2dd360e clang::ASTFrontendAction::ExecuteAction()
/home/marsenau/src/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:540:1
#24 0x32410b2 clang::CodeGenAction::ExecuteAction()
/home/marsenau/src/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp:798:1
#25 0x2dd30a0 clang::FrontendAction::Execute()
/home/marsenau/src/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:443:7
#26 0x2d7e27c clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
/home/marsenau/src/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp:842:7
#27 0x2f0b0f2 clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
/home/marsenau/src/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:222:18
#28 0xaeb543 cc1_main(llvm::ArrayRef<char const*>, char const*, void*)
/home/marsenau/src/llvm/tools/clang/tools/driver/cc1_main.cpp:116:13
#29 0xadf171 ExecuteCC1Tool(llvm::ArrayRef<char const*>, llvm::StringRef)
/home/marsenau/src/llvm/tools/clang/tools/driver/driver.cpp:301:12
#30 0xaddfe9 main
/home/marsenau/src/llvm/tools/clang/tools/driver/driver.cpp:366:12
#31 0x7f541c2fcec5 __libc_start_main
/build/buildd/eglibc-2.19/csu/libc-start.c:321:0
#32 0xadd5a4 _start (/usr/local/bin/clang-3.8+0xadd5a4)
Stack dump:
0.    Program arguments: /usr/local/bin/clang-3.8 -cc1 -triple
spir64-unknown-unknown -emit-llvm -disable-free -main-file-name opencl_math.cl
-mrelocation-model static -mthread-model posix -mdisable-fp-elim -fmath-errno
-no-integrated-as -mconstructor-aliases -dwarf-column-info -D cl_khr_fp64 -D
cl_khr_int64_base_atomics -fno-dwarf-directory-asm -ferror-limit 19
-fmessage-length 205 -fobjc-runtime=gcc -fdiagnostics-show-option
-fcolor-diagnostics -cl-std=CL2.0 -x cl reduced.cl

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20151104/8b1f20d4/attachment.html>


More information about the llvm-bugs mailing list