Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion Failure When Enabling -rose:outline:new_file in Outliner #244

Open
icyclv opened this issue Sep 6, 2024 · 0 comments
Open

Assertion Failure When Enabling -rose:outline:new_file in Outliner #244

icyclv opened this issue Sep 6, 2024 · 0 comments

Comments

@icyclv
Copy link

icyclv commented Sep 6, 2024

Hi,

Sorry to raise another question. I'm currently working with the Outliner and trying to use the new_file feature. However, when I run the outlineTutorial from the tutorial, I encounter an exception with the following details:

./outlineTutorial -rose:outline:new_file ./test.cpp
These are the arguments after parsing with Sawyer:
    "./outlineTutorial"
    "./test.cpp"
outlineTutorial[87114] 0.23432s tool[INFO ]: outlining...
outlineTutorial[87114] 0.46545s Rose[FATAL]: assertion failed:
outlineTutorial[87114] 0.46547s Rose[FATAL]:   ../../../src/src/midend/programTransformation/astOutlining/GenerateFunc.cc:1590
outlineTutorial[87114] 0.46549s Rose[FATAL]:   SgFunctionDeclaration* Outliner::generateFunction(SgBasicBlock*, const string&, const VarSymSet_t&, const VarSymSet_t&, const std::set<SgInitializedName*>&, SgClassDeclaration*, SgScopeStatement*)
outlineTutorial[87114] 0.46550s Rose[FATAL]:   required: saved_source_file_for_dynamic_library != __null
[1]    87114 IOT instruction (core dumped)  ./outlineTutorial -rose:outline:new_file ./test.cpp

Below is the backtrace information for the error:

#0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
#1  __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2  __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3  0x00007fefa104526e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4  0x00007fefa10288ff in __GI_abort () at ./stdlib/abort.c:79
#5  0x00007fefa277d830 in Rose::abortOnFailedAssertion () at ../../../src/src/util/processSupport.C:159
#6  0x00007fefa46d71ec in Sawyer::Assert::fail (mesg=mesg@entry=0x7fefa4871b4e "assertion failed", expr=expr@entry=0x7fefa4c48600 "required: saved_source_file_for_dynamic_library != __null", 
    note="", filename=filename@entry=0x7fefa4c47e60 "../../../src/src/midend/programTransformation/astOutlining/GenerateFunc.cc", linenum=linenum@entry=1590, 
    funcname=funcname@entry=0x7fefa4c48438 "SgFunctionDeclaration* Outliner::generateFunction(SgBasicBlock*, const string&, const VarSymSet_t&, const VarSymSet_t&, const std::set<SgInitializedName*>&, SgClassDeclaration*, SgScopeStatement*)") at ../../../src/src/Sawyer/Assert.C:38
#7  0x00007fefa44d74af in Outliner::generateFunction (s=s@entry=0x7fef9d784418, func_name_str="OUT__1__7233__", syms=std::set with 2 elements = {...}, pdSyms=std::set with 0 elements, 
    restoreVars=std::set with 2 elements = {...}, struct_decl=struct_decl@entry=0x0, scope=0x7fefa0cfe240) at ../../../src/src/midend/programTransformation/astOutlining/GenerateFunc.cc:1590
#8  0x00007fefa44e5ab0 in Outliner::outlineBlock (s=s@entry=0x7fef9d784418, func_name_str="OUT__1__7233__") at ../../../src/src/midend/programTransformation/astOutlining/Transform.cc:339
#9  0x00007fefa44b4cfe in Outliner::outline (s=s@entry=0x7fef9d5c8158, func_name="OUT__1__7233__") at ../../../src/src/midend/programTransformation/astOutlining/Outliner.cc:188
#10 0x00007fefa44baca2 in Outliner::outline (decl=0x7fef9d2d4010) at ../../../src/src/midend/programTransformation/astOutlining/PragmaInterface.cc:141
#11 0x00007fefa44bbff8 in Outliner::outlineAll (project=project@entry=0x7fefa0d87010) at ../../../src/src/midend/programTransformation/astOutlining/PragmaInterface.cc:377
#12 0x000055612bfdb8c9 in main (argc=3, argv=<optimized out>) at ../../../src/tutorial/outliner/outlineTutorial.cc:155

It seems that saved_source_file_for_dynamic_library is not assigned, causing the assertion failure.

ROSE_ASSERT(saved_source_file_for_dynamic_library != NULL);

Could you please help me understand what might be causing this issue and how to resolve it?

Thank you for your help!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant