Stack map error

EDIT traced down to this line of code:

this works though
<cfset result = PrecisionEvaluate(’#amount#*((3.2808333333)^3)’)>

was messing with my unit conversion functions. Nothing fancy just takes nuymber and converts to units given unit systems.

Lucee 5.3.7.47 Error (java.lang.VerifyError)
Message Expecting a stackmap frame at branch target 14
Exception Details:
Location:
util2_cfc$cf$1.initComponent(Llucee/runtime/PageContext;Llucee/runtime/ComponentImpl;Z)V @7: ifeq
Reason:
Expected stackmap frame at this location.
Bytecode:
0000000: 013a 042c b600 8099 0007 01a7 0007 2bb6
0000010: 004f 3a05 2c2b 2a1d b600 841d 9a00 0a2b
0000020: 1905 b800 87b1 2bb6 0053 03b9 0059 0200
0000030: 3606 2c2b b600 8a3a 042c 2ab4 008c 0332
0000040: 2ab4 001d 0332 b600 902c 2ab4 008c 0432
0000050: 2ab4 001d 0432 b600 902c 2ab4 008c 0532
0000060: 2ab4 001d 0532 b600 902c 2ab4 008c 0632
0000070: 2ab4 001d 0632 b600 902c 2ab4 008c 0732
0000080: 2ab4 001d 0732 b600 902c 2b2a b600 942b
0000090: 1296 b600 9a2b 129c b600 9a2b 129c b600
00000a0: 9a2b 129e b600 9a2b 12a0 b600 9a2b 12a2
00000b0: b600 9a01 a700 2c3a 072b 1905 b800 6519
00000c0: 07b8 006b bfa7 001b 3a08 2bb6 0053 1506
00000d0: b900 5902 0057 2c2b 1904 b600 a519 08bf
00000e0: 2bb6 0053 1506 b900 5902 0057 2c2b 1904
00000f0: b600 a52b 1905 b800 87b1
Exception Handler Table:
bci [50, 180] => handler: 183
bci [50, 197] => handler: 200
Stacktrace The Error Occurred in
C:\inetpub\stable\secure\map_view\mapview.cfm: line 9
7:
8:
9: <cfset unit_conversion = createObject(“util2”)>
10:
11: <cfif structKeyExists(url, ‘loadUsersetting’) AND url.loadUsersetting EQ ‘true’ AND not Find(‘mapview.cfm’,cgi.http_referer)>

Java Stacktrace lucee.runtime.exp.NativeException: Expecting a stackmap frame at branch target 14
Exception Details:
Location:
util2_cfc$cf$1.initComponent(Llucee/runtime/PageContext;Llucee/runtime/ComponentImpl;Z)V @7: ifeq
Reason:
Expected stackmap frame at this location.
Bytecode:
0000000: 013a 042c b600 8099 0007 01a7 0007 2bb6
0000010: 004f 3a05 2c2b 2a1d b600 841d 9a00 0a2b
0000020: 1905 b800 87b1 2bb6 0053 03b9 0059 0200
0000030: 3606 2c2b b600 8a3a 042c 2ab4 008c 0332
0000040: 2ab4 001d 0332 b600 902c 2ab4 008c 0432
0000050: 2ab4 001d 0432 b600 902c 2ab4 008c 0532
0000060: 2ab4 001d 0532 b600 902c 2ab4 008c 0632
0000070: 2ab4 001d 0632 b600 902c 2ab4 008c 0732
0000080: 2ab4 001d 0732 b600 902c 2b2a b600 942b
0000090: 1296 b600 9a2b 129c b600 9a2b 129c b600
00000a0: 9a2b 129e b600 9a2b 12a0 b600 9a2b 12a2
00000b0: b600 9a01 a700 2c3a 072b 1905 b800 6519
00000c0: 07b8 006b bfa7 001b 3a08 2bb6 0053 1506
00000d0: b900 5902 0057 2c2b 1904 b600 a519 08bf
00000e0: 2bb6 0053 1506 b900 5902 0057 2c2b 1904
00000f0: b600 a52b 1905 b800 87b1
Exception Handler Table:
bci [50, 180] => handler: 183
bci [50, 197] => handler: 200

at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
at java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3137)
at java.base/java.lang.Class.getConstructor0(Class.java:3342)
at java.base/java.lang.Class.getConstructor(Class.java:2151)
at lucee.runtime.PageSourceImpl.newInstance(PageSourceImpl.java:477)
at lucee.runtime.PageSourceImpl.loadPhysical(PageSourceImpl.java:367)
at lucee.runtime.PageSourceImpl.loadPageThrowTemplateException(PageSourceImpl.java:237)
at lucee.runtime.PageSourceImpl.loadPage(PageSourceImpl.java:1007)
at lucee.runtime.component.ComponentLoader._search(ComponentLoader.java:292)
at lucee.runtime.component.ComponentLoader._search(ComponentLoader.java:117)
at lucee.runtime.component.ComponentLoader.searchComponent(ComponentLoader.java:79)
at lucee.runtime.PageContextImpl.loadComponent(PageContextImpl.java:3167)
at lucee.runtime.functions.other.CreateObject.doComponent(CreateObject.java:148)
at lucee.runtime.functions.other.CreateObject.call(CreateObject.java:70)
at lucee.runtime.functions.other.CreateObject.call(CreateObject.java:45)
at secure.map_view.mapview_cfm$cf.call(/Carlson/secure/map_view/mapview.cfm:9)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:945)
at lucee.runtime.PageContextImpl._doInclude(PageContextImpl.java:837)
at lucee.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:216)
at lucee.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:42)
at lucee.runtime.PageContextImpl.execute(PageContextImpl.java:2416)
at lucee.runtime.PageContextImpl._execute(PageContextImpl.java:2406)
at lucee.runtime.PageContextImpl.executeCFML(PageContextImpl.java:2381)
at lucee.runtime.engine.Request.exe(Request.java:43)
at lucee.runtime.engine.CFMLEngineImpl._service(CFMLEngineImpl.java:1170)
at lucee.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:1116)
at lucee.loader.engine.CFMLEngineWrapper.serviceCFML(CFMLEngineWrapper.java:97)
at lucee.loader.servlet.CFMLServlet.service(CFMLServlet.java:51)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:432)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.VerifyError: Expecting a stackmap frame at branch target 14
Exception Details:
Location:
util2_cfc$cf$1.initComponent(Llucee/runtime/PageContext;Llucee/runtime/ComponentImpl;Z)V @7: ifeq
Reason:
Expected stackmap frame at this location.
Bytecode:
0000000: 013a 042c b600 8099 0007 01a7 0007 2bb6
0000010: 004f 3a05 2c2b 2a1d b600 841d 9a00 0a2b
0000020: 1905 b800 87b1 2bb6 0053 03b9 0059 0200
0000030: 3606 2c2b b600 8a3a 042c 2ab4 008c 0332
0000040: 2ab4 001d 0332 b600 902c 2ab4 008c 0432
0000050: 2ab4 001d 0432 b600 902c 2ab4 008c 0532
0000060: 2ab4 001d 0532 b600 902c 2ab4 008c 0632
0000070: 2ab4 001d 0632 b600 902c 2ab4 008c 0732
0000080: 2ab4 001d 0732 b600 902c 2b2a b600 942b
0000090: 1296 b600 9a2b 129c b600 9a2b 129c b600
00000a0: 9a2b 129e b600 9a2b 12a0 b600 9a2b 12a2
00000b0: b600 9a01 a700 2c3a 072b 1905 b800 6519
00000c0: 07b8 006b bfa7 001b 3a08 2bb6 0053 1506
00000d0: b900 5902 0057 2c2b 1904 b600 a519 08bf
00000e0: 2bb6 0053 1506 b900 5902 0057 2c2b 1904
00000f0: b600 a52b 1905 b800 87b1
Exception Handler Table:
bci [50, 180] => handler: 183
bci [50, 197] => handler: 200

… 50 more

Timestamp 3/9/21 7:44:15 AM MST

A complete revert of the code is still producing this error. I switched to always inspect templates in case it had the error stored in cache. rebooted dev machine, reverted in svn. Still getting same error. Intrestingly though other branches with the same code base causing the issue are working proeprly. Im going to delte the web-inf folder and see if that jogs it.

I have reduced my cfc down to

<cfcomponent>

    <cffunction 

        name = "distance"

    >   

         <cfif NOT isNUmeric(amount)>

            <cfreturn 0>

        </cfif>

                <cfreturn amount>

    </cffunction>

   

   <cffunction 

        name = "volume"

    >

        <cfreturn result>

    </cffunction>

   

    <cffunction 

        name = "MetricDistance"

    >   

        <cfreturn amount>

    </cffunction>

</cfcomponent>

error strill occuring

stop lucee, delete web-inf, start lucee back to working

just tried to reproduce, how are you calling that cfc?

<cfscript>
    a = CreateObject("test"); // i.e. the above component
    dump(a.distance(amount=1));
</cfscript>

I think it wasnt able to reload the cfc since it crashed. I delted web-inf and restarted and it worked with reverted code. It have tracked it down to:
traced down to this line of code:
<cfset result = PrecisionEvaluate( amount*((3.2808333333)^3) )>
this works though:
<cfset result = PrecisionEvaluate(’#amount#*((3.2808333333)^3)’)>

nice, reproduced! can you file a bug?

I think it is same as this one…
https://luceeserver.atlassian.net/browse/LDEV-3020

ok, I have attached the testcase to the issue

Also works fine by setting this in a variable.

<cfset a = amount*((3.2808333333)^3)>
<cfset result = PrecisionEvaluate(a)>