root-project / cling

The cling C++ interpreter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`.undo` after an "evaluation" (no semi colon) leads to crash

aytey opened this issue · comments

  • Checked for duplicates

Describe the bug

Doing something like:

int x = 10;
x == 10;
.undo 2
float x = 10;

Works fine, but if you want to evaluate x == 10 (so no trailing colon):

int x = 10;
x == 10
.undo 2
float x = 10;

then you get a crash:

 #0 0x0000000000cdc1c8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/apm/clones/cling/build/install/bin/cling+0xcdc1c8)
 #1 0x0000000000cd9c8e SignalHandler(int) Signals.cpp:0:0
 #2 0x00007f969843f190 __restore_rt (/lib64/libc.so.6+0x3f190)
 #3 0x0000000002d0b0db clang::BaseUsingDecl::removeShadowDecl(clang::UsingShadowDecl*) (/home/apm/clones/cling/build/install/bin/cling+0x2d0b0db)
 #4 0x0000000000b8dfa7 clang::declvisitor::Base<std::add_pointer, cling::DeclUnloader, bool>::Visit(clang::Decl*) (/home/apm/clones/cling/build/install/bin/cling+0xb8dfa7)
 #5 0x0000000000b8e210 cling::DeclUnloader::VisitDeclContext(clang::DeclContext*) (/home/apm/clones/cling/build/install/bin/cling+0xb8e210)
 #6 0x0000000000b8e322 cling::DeclUnloader::VisitFunctionDecl(clang::FunctionDecl*, bool) (/home/apm/clones/cling/build/install/bin/cling+0xb8e322)
 #7 0x0000000000b8e210 cling::DeclUnloader::VisitDeclContext(clang::DeclContext*) (/home/apm/clones/cling/build/install/bin/cling+0xb8e210)
 #8 0x0000000000b8f6fd cling::DeclUnloader::VisitRecordDecl(clang::RecordDecl*) (.part.0) DeclUnloader.cpp:0:0
 #9 0x0000000000b8fa25 cling::DeclUnloader::VisitClassTemplateSpecializationDecl(clang::ClassTemplateSpecializationDecl*) (/home/apm/clones/cling/build/install/bin/cling+0xb8fa25)
#10 0x0000000000c120e5 cling::TransactionUnloader::unloadDeclarations(cling::Transaction*, cling::DeclUnloader&) (/home/apm/clones/cling/build/install/bin/cling+0xc120e5)
#11 0x0000000000c125f2 cling::TransactionUnloader::RevertTransaction(cling::Transaction*) (/home/apm/clones/cling/build/install/bin/cling+0xc125f2)
#12 0x0000000000be8c58 cling::Interpreter::unload(cling::Transaction&) (/home/apm/clones/cling/build/install/bin/cling+0xbe8c58)
#13 0x0000000000be8dec cling::Interpreter::unload(unsigned int) (/home/apm/clones/cling/build/install/bin/cling+0xbe8dec)
#14 0x0000000000c3561c cling::MetaSema::actOnUndoCommand(unsigned int) (/home/apm/clones/cling/build/install/bin/cling+0xc3561c)
#15 0x0000000000c31c3e cling::MetaParser::isundoCommand() (/home/apm/clones/cling/build/install/bin/cling+0xc31c3e)
#16 0x0000000000c323e9 cling::MetaParser::isCommand(cling::MetaSema::ActionResult&, cling::Value*) (/home/apm/clones/cling/build/install/bin/cling+0xc323e9)
#17 0x0000000000c32f10 cling::MetaProcessor::process(llvm::StringRef, cling::Interpreter::CompilationResult&, cling::Value*, bool) (/home/apm/clones/cling/build/install/bin/cling+0xc32f10)
#18 0x0000000000cfa836 cling::UserInterface::runInteractively(bool) (/home/apm/clones/cling/build/install/bin/cling+0xcfa836)
#19 0x0000000000a5d44d main (/home/apm/clones/cling/build/install/bin/cling+0xa5d44d)
#20 0x00007f96984281b0 __libc_start_call_main (/lib64/libc.so.6+0x281b0)
#21 0x00007f9698428279 __libc_start_main@GLIBC_2.2.5 (/lib64/libc.so.6+0x28279)
#22 0x0000000000b014a5 _start /home/abuild/rpmbuild/BUILD/glibc-2.38/csu/../sysdeps/x86_64/start.S:117:0

If you insert a ; after your evaluation, then it still doesn't work:

int x = 10;
x == 10
;
.undo 2
float x = 10;

(same crash, but you can .undo 1!)

Expected behavior

I would expect to be able to "undo" evaluations.

To Reproduce

  • Build cling
  • Input something like:
int x = 10;
x == 10
.undo 2
float x = 10;
  • Observe crash

Setup

Machine:

% uname -a
Linux vistrrdslin0006 6.7.1-1-default #1 SMP PREEMPT_DYNAMIC Sat Jan 20 15:39:39 UTC 2024 (4959dd8) x86_64 x86_64 x86_64 GNU/Linux

lsb-release -a
LSB Version:    core-2.0-noarch:core-3.2-noarch:core-4.0-noarch:core-2.0-x86_64:core-3.2-x86_64:core-4.0-x86_64:desktop-4.0.fake-amd64:desktop-4.0.fake-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.2-amd64:graphics-3.2-noarch:graphics-4.0.fake-amd64:graphics-4.0.fake-noarch
Distributor ID: openSUSE
Description:    openSUSE Tumbleweed
Release:        20240124
Codename:       n/a

% ldd --version
ldd (GNU libc) 2.38
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

gcc --version
gcc (SUSE Linux) 10.5.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Additional context

I cannot reproduce the crash with the current master, it works for me, could you retry with latest commits ? Maybe @hahnjo knows at what commit exactly this was solved.

When I run the same file for the second time, I also find the following issues:
(the cling git warehouse latest commit SHA-1: a54ec55f322a37f34fc32ec6a9c6a43430045ae7, the llvm-project git warehouse latest commit SHA-1: 11393b396848b418ab6840a7958e3edfa3269d1f)
****************** CLING ******************

  • Type C++ code and press enter to run it *
  •         Type .q to exit             *
    

[cling]$ .x E:\03_Study\01_Git\Cling\cling-build\Debug\bin\Test.c
Test code!
(int) 1
[cling]$ .x E:\03_Study\01_Git\Cling\cling-build\Debug\bin\Test.c
Assertion failed: llvm::is_contained(shadows(), S) && "declaration not in set", file E:\03_Study\01_Git\Cling\llvm-project\clang\lib\AST\DeclCXX.cpp, line 3082
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: cling
Exception Code: 0x80000003
#0 0x00007ff6dbcc924c HandleAbort E:\03_Study\01_Git\Cling\llvm-project\llvm\lib\Support\Windows\Signals.inc:419:0
#1 0x00007ffae1cb90ed (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xa90ed)
#2 0x00007ffae1cbae49 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xaae49)
#3 0x00007ffae1cc1345 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xb1345)
#4 0x00007ffae1cc0bd7 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xb0bd7)
#5 0x00007ffae1cbeba1 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xaeba1)
#6 0x00007ffae1cc18af (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xb18af)
#7 0x00007ff6e2435088 clang::BaseUsingDecl::removeShadowDecl(class clang::UsingShadowDecl *) E:\03_Study\01_Git\Cling\llvm-project\clang\lib\AST\DeclCXX.cpp:3082:0
#8 0x00007ff6db9ddee9 cling::DeclUnloader::VisitUsingShadowDecl(class clang::UsingShadowDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:590:0
#9 0x00007ff6db8b5eef clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:385:0
#10 0x00007ff6db9de877 cling::DeclUnloader::VisitDeclContext(class clang::DeclContext *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:777:0
#11 0x00007ff6db9de268 cling::DeclUnloader::VisitFunctionDecl(class clang::FunctionDecl *, bool) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:647:0
#12 0x00007ff6db9de471 cling::DeclUnloader::VisitFunctionDecl(class clang::FunctionDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:711:0
#13 0x00007ff6db8b66ee clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::VisitCXXMethodDecl(class clang::CXXMethodDecl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:443:0
#14 0x00007ff6db8b5f8f clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:443:0
#15 0x00007ff6db9de877 cling::DeclUnloader::VisitDeclContext(class clang::DeclContext *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:777:0
#16 0x00007ff6db9dee5f cling::DeclUnloader::VisitTagDecl(class clang::TagDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:844:0
#17 0x00007ff6db9df059 cling::DeclUnloader::VisitRecordDecl(class clang::RecordDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:885:0
#18 0x00007ff6db8b671e clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::VisitCXXRecordDecl(class clang::CXXRecordDecl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:295:0
#19 0x00007ff6db9df5a3 cling::DeclUnloader::VisitClassTemplateSpecializationDecl(class clang::ClassTemplateSpecializationDecl *, bool) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:1044:0
#20 0x00007ff6db9df4e9 cling::DeclUnloader::VisitClassTemplateDecl(class clang::ClassTemplateDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:1033:0
#21 0x00007ff6db8b5d87 clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:239:0
#22 0x00007ff6db9de877 cling::DeclUnloader::VisitDeclContext(class clang::DeclContext *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:777:0
#23 0x00007ff6db9dead8 cling::DeclUnloader::VisitNamespaceDecl(class clang::NamespaceDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:805:0
#24 0x00007ff6db8b5c97 clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:143:0
#25 0x00007ff6db8b5a23 cling::DeclUnloader::UnloadDecl(class clang::Decl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.h:66:0
#26 0x00007ff6dbc27c9f cling::TransactionUnloader::unloadDeclarations(class cling::Transaction *, class cling::DeclUnloader &) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\TransactionUnloader.cpp:63:0
#27 0x00007ff6dbc28501 cling::TransactionUnloader::RevertTransaction(class cling::Transaction *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\TransactionUnloader.cpp:147:0
#28 0x00007ff6dbb30f16 cling::Interpreter::unload(class cling::Transaction &) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\Interpreter.cpp:1584:0
#29 0x00007ff6dbb310d1 cling::Interpreter::unload(unsigned int) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\Interpreter.cpp:1606:0
#30 0x00007ff6dbc7a483 cling::MetaSema::actOnUCommand(class llvm::StringRef) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaSema.cpp:382:0
#31 0x00007ff6dbc78532 cling::MetaSema::actOnLCommand(class llvm::StringRef, class cling::Transaction **) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaSema.cpp:70:0
#32 0x00007ff6dbc78a7a cling::MetaSema::actOnxCommand(class llvm::StringRef, class llvm::StringRef, class llvm::StringRef, class cling::Value *) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaSema.cpp:296:0
#33 0x00007ff6dbc69aae cling::MetaParser::isXCommand(enum cling::MetaSema::ActionResult &, class cling::Value *) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaParser.cpp:322:0
#34 0x00007ff6dbc684d6 cling::MetaParser::isCommand(enum cling::MetaSema::ActionResult &, class cling::Value *) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaParser.cpp:119:0
#35 0x00007ff6dbc6d479 cling::MetaParser::isMetaCommand(enum cling::MetaSema::ActionResult &, class cling::Value *) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaParser.cpp:97:0
#36 0x00007ff6dbc6ffb2 cling::MetaProcessor::process(class llvm::StringRef, enum cling::Interpreter::CompilationResult &, class cling::Value *, bool) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaProcessor.cpp:316:0
#37 0x00007ff6dbe3a5a1 cling::UserInterface::runInteractively(bool) E:\03_Study\01_Git\Cling\cling\lib\UserInterface\UserInterface.cpp:161:0
#38 0x00007ff6db697fec main E:\03_Study\01_Git\Cling\cling\tools\driver\cling.cpp:246:0
#39 0x00007ff6eacbd3b9 invoke_main D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:79:0
#40 0x00007ff6eacbd29e __scrt_common_main_seh D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288:0
#41 0x00007ff6eacbd15e __scrt_common_main D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:331:0
#42 0x00007ff6eacbd44e mainCRTStartup D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp:17:0
#43 0x00007ffb6218257d (C:\WINDOWS\System32\KERNEL32.DLL+0x1257d)
#44 0x00007ffb62e8aa48 (C:\WINDOWS\SYSTEM32\ntdll.dll+0x5aa48)

When I tried the above steps, I also reproduced the problem, as shown below:
(the cling git warehouse latest commit SHA-1: a54ec55f322a37f34fc32ec6a9c6a43430045ae7, the llvm-project git warehouse latest commit SHA-1: 11393b396848b418ab6840a7958e3edfa3269d1f)

[cling]$ int x = 10;
[cling]$ x == 10
input_line_4:2:4: note: use '=' to turn this equality comparison into an assignment
x == 10;
^~

(bool) true
[cling]$ .undo 2
Assertion failed: llvm::is_contained(shadows(), S) && "declaration not in set", file E:\03_Study\01_Git\Cling\llvm-project\clang\lib\AST\DeclCXX.cpp, line 3082
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: cling
Exception Code: 0x80000003
#0 0x00007ff6dbcc924c HandleAbort E:\03_Study\01_Git\Cling\llvm-project\llvm\lib\Support\Windows\Signals.inc:419:0
#1 0x00007ffae1cb90ed (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xa90ed)
#2 0x00007ffae1cbae49 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xaae49)
#3 0x00007ffae1cc1345 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xb1345)
#4 0x00007ffae1cc0bd7 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xb0bd7)
#5 0x00007ffae1cbeba1 (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xaeba1)
#6 0x00007ffae1cc18af (C:\WINDOWS\SYSTEM32\ucrtbased.dll+0xb18af)
#7 0x00007ff6e2435088 clang::BaseUsingDecl::removeShadowDecl(class clang::UsingShadowDecl *) E:\03_Study\01_Git\Cling\llvm-project\clang\lib\AST\DeclCXX.cpp:3082:0
#8 0x00007ff6db9ddee9 cling::DeclUnloader::VisitUsingShadowDecl(class clang::UsingShadowDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:590:0
#9 0x00007ff6db8b5eef clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:385:0
#10 0x00007ff6db9de877 cling::DeclUnloader::VisitDeclContext(class clang::DeclContext *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:777:0
#11 0x00007ff6db9de268 cling::DeclUnloader::VisitFunctionDecl(class clang::FunctionDecl *, bool) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:647:0
#12 0x00007ff6db9de471 cling::DeclUnloader::VisitFunctionDecl(class clang::FunctionDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:711:0
#13 0x00007ff6db8b66ee clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::VisitCXXMethodDecl(class clang::CXXMethodDecl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:443:0
#14 0x00007ff6db8b5f8f clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:443:0
#15 0x00007ff6db9de877 cling::DeclUnloader::VisitDeclContext(class clang::DeclContext *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:777:0
#16 0x00007ff6db9dee5f cling::DeclUnloader::VisitTagDecl(class clang::TagDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:844:0
#17 0x00007ff6db9df059 cling::DeclUnloader::VisitRecordDecl(class clang::RecordDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:885:0
#18 0x00007ff6db8b671e clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::VisitCXXRecordDecl(class clang::CXXRecordDecl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:295:0
#19 0x00007ff6db9df5a3 cling::DeclUnloader::VisitClassTemplateSpecializationDecl(class clang::ClassTemplateSpecializationDecl *, bool) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:1044:0
#20 0x00007ff6db9df4e9 cling::DeclUnloader::VisitClassTemplateDecl(class clang::ClassTemplateDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:1033:0
#21 0x00007ff6db8b5d87 clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:239:0
#22 0x00007ff6db9de877 cling::DeclUnloader::VisitDeclContext(class clang::DeclContext *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:777:0
#23 0x00007ff6db9dead8 cling::DeclUnloader::VisitNamespaceDecl(class clang::NamespaceDecl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.cpp:805:0
#24 0x00007ff6db8b5c97 clang::declvisitor::Base<struct std::add_pointer, class cling::DeclUnloader, bool>::Visit(class clang::Decl *) E:\03_Study\01_Git\Cling\cling-build\tools\clang\include\clang\AST\DeclNodes.inc:143:0
#25 0x00007ff6db8b5a23 cling::DeclUnloader::UnloadDecl(class clang::Decl *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\DeclUnloader.h:66:0
#26 0x00007ff6dbc27c9f cling::TransactionUnloader::unloadDeclarations(class cling::Transaction *, class cling::DeclUnloader &) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\TransactionUnloader.cpp:63:0
#27 0x00007ff6dbc28501 cling::TransactionUnloader::RevertTransaction(class cling::Transaction *) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\TransactionUnloader.cpp:147:0
#28 0x00007ff6dbb30f16 cling::Interpreter::unload(class cling::Transaction &) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\Interpreter.cpp:1584:0
#29 0x00007ff6dbb310d1 cling::Interpreter::unload(unsigned int) E:\03_Study\01_Git\Cling\cling\lib\Interpreter\Interpreter.cpp:1606:0
#30 0x00007ff6dbc7a0d9 cling::MetaSema::actOnUndoCommand(unsigned int) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaSema.cpp:346:0
#31 0x00007ff6dbc6c4ff cling::MetaParser::isundoCommand(void) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaParser.cpp:669:0
#32 0x00007ff6dbc686ad cling::MetaParser::isCommand(enum cling::MetaSema::ActionResult &, class cling::Value *) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaParser.cpp:119:0
#33 0x00007ff6dbc6d479 cling::MetaParser::isMetaCommand(enum cling::MetaSema::ActionResult &, class cling::Value *) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaParser.cpp:97:0
#34 0x00007ff6dbc6ffb2 cling::MetaProcessor::process(class llvm::StringRef, enum cling::Interpreter::CompilationResult &, class cling::Value *, bool) E:\03_Study\01_Git\Cling\cling\lib\MetaProcessor\MetaProcessor.cpp:316:0
#35 0x00007ff6dbe3a5a1 cling::UserInterface::runInteractively(bool) E:\03_Study\01_Git\Cling\cling\lib\UserInterface\UserInterface.cpp:161:0
#36 0x00007ff6db697fec main E:\03_Study\01_Git\Cling\cling\tools\driver\cling.cpp:246:0
#37 0x00007ff6eacbd3b9 invoke_main D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:79:0
#38 0x00007ff6eacbd29e __scrt_common_main_seh D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288:0
#39 0x00007ff6eacbd15e __scrt_common_main D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:331:0
#40 0x00007ff6eacbd44e mainCRTStartup D:\a_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp:17:0
#41 0x00007ffb6218257d (C:\WINDOWS\System32\KERNEL32.DLL+0x1257d)
#42 0x00007ffb62e8aa48 (C:\WINDOWS\SYSTEM32\ntdll.dll+0x5aa48)