Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang
gpb
gpb-4.19.8-stacktrace.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gpb-4.19.8-stacktrace.patch of Package gpb
diff -Ndurp gpb-4.19.8/src/gpb_compile.erl gpb-4.19.8-stacktrace/src/gpb_compile.erl --- gpb-4.19.8/src/gpb_compile.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/src/gpb_compile.erl 2023-08-28 01:12:19.491539224 +0300 @@ -303,10 +303,13 @@ -export_type([io_info_item/0]). -ifdef(OTP_RELEASE). +-if(?OTP_RELEASE >= 21). -define(STACKTRACE(C,R,St), C:R:St ->). --else. % -ifdef(OTP_RELEASE). +-endif. +-endif. +-ifndef(STACKTRACE). -define(STACKTRACE(C,R,St), C:R -> St = erlang:get_stacktrace(),). --endif. % -ifdef(OTP_RELEASE). +-endif. -record(path, {%% The path as located eg on the file system @@ -4532,13 +4535,12 @@ nano_epp(Code, ModAsStr, HrlText, Opts) %% Setup a dictionary, mostly to handle -ifdef...-endif %% in hrls and in the decoders. - %% The OTP_RELEASE first appeared in Erlang 21. D0 = dict:new(), OtpRelease = gpb_lib:current_otp_release(), TargetOtpRelease = proplists:get_value(target_erlang_version, Opts, OtpRelease), D1 = if TargetOtpRelease >= 21 -> - dict:store('OTP_RELEASE', OtpRelease, D0); + dict:store('GPB_PATTERN_STACK', OtpRelease, D0); TargetOtpRelease < 21 -> D0 end, diff -Ndurp gpb-4.19.8/src/gpb.erl gpb-4.19.8-stacktrace/src/gpb.erl --- gpb-4.19.8/src/gpb.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/src/gpb.erl 2023-08-28 01:13:50.605523779 +0300 @@ -74,14 +74,13 @@ -endif. % -ifndef(NO_HAVE_MAPS). -ifdef(OTP_RELEASE). -%% Erlang 21 introduced new syntax for getting the stack trace. -%% The OTP_RELEASE macro was also introduced in Erlang 21. --define(with_stacktrace(Class, Reason, Stack), - Class:Reason:Stack ->). --else. % -ifdef(OTP_RELEASE). --define(with_stacktrace(Class, Reason, Stack), - Class:Reason -> Stack = erlang:get_stacktrace(),). --endif. % -ifdef(OTP_RELEASE). +-if(?OTP_RELEASE >= 21). +-define(with_stacktrace(Class, Reason, Stack), Class:Reason:Stack ->). +-endif. +-endif. +-ifndef(with_stacktrace). +-define(with_stacktrace(Class, Reason, Stack), Class:Reason -> Stack = erlang:get_stacktrace(),). +-endif. -include_lib("eunit/include/eunit.hrl"). -include("../include/gpb.hrl"). diff -Ndurp gpb-4.19.8/src/gpb_gen_decoders.erl gpb-4.19.8-stacktrace/src/gpb_gen_decoders.erl --- gpb-4.19.8/src/gpb_gen_decoders.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/src/gpb_gen_decoders.erl 2023-08-28 01:12:19.491539224 +0300 @@ -142,7 +142,7 @@ format_decoders_top_function_msgs(Defs, TrUserData = proplists:get_value(user_data, Opts), decode_msg_1_catch(Bin, MsgName, TrUserData) end), - ["-ifdef('OTP_RELEASE').\n", % This macro appeared in Erlang 21 + ["-ifdef('GPB_PATTERN_STACK').\n", DecodeMsg1Catch_GetStackTraceAsPattern, "-else.\n", DecodeMsg1Catch_GetStackTraceAsCall, diff -Ndurp gpb-4.19.8/src/gpb_gen_json_decoders.erl gpb-4.19.8-stacktrace/src/gpb_gen_json_decoders.erl --- gpb-4.19.8/src/gpb_gen_json_decoders.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/src/gpb_gen_json_decoders.erl 2023-08-28 01:12:19.491539224 +0300 @@ -102,7 +102,7 @@ format_top_function_msgs(Defs, AnRes, Op TrUserData = proplists:get_value(user_data, Opts), from_json_1_catch(Json, MsgName, TrUserData) end), - ["-ifdef('OTP_RELEASE').\n", % This macro appeared in Erlang 21 + ["-ifdef('GPB_PATTERN_STACK').\n", FromJsonMsg1Catch_GetStackTraceAsPattern, "-else.\n", FromJsonMsg1Catch_GetStackTraceAsCall, diff -Ndurp gpb-4.19.8/src/gpb_parse.erl gpb-4.19.8-stacktrace/src/gpb_parse.erl --- gpb-4.19.8/src/gpb_parse.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/src/gpb_parse.erl 2023-08-28 01:12:19.491539224 +0300 @@ -76,10 +76,13 @@ format_error({syntax_error, {before, Tok throw({syntax_error, line(Where), Where, Why})). -ifdef(OTP_RELEASE). +-if(?OTP_RELEASE >= 21). -define(STACKTRACE(C,R,St), C:R:St ->). --else. % -ifdef(OTP_RELEASE). +-endif. +-endif. +-ifndef(STACKTRACE). -define(STACKTRACE(C,R,St), C:R -> St = erlang:get_stacktrace(),). --endif. % -ifdef(OTP_RELEASE). +-endif. %% Principles that most of the recursive descent parser below follow: %% diff -Ndurp gpb-4.19.8/test/gpb_codegen_tests.erl gpb-4.19.8-stacktrace/test/gpb_codegen_tests.erl --- gpb-4.19.8/test/gpb_codegen_tests.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/test/gpb_codegen_tests.erl 2023-08-28 01:12:19.491539224 +0300 @@ -23,10 +23,13 @@ -include_lib("eunit/include/eunit.hrl"). -ifdef(OTP_RELEASE). +-if(?OTP_RELEASE >= 21). -define(STACKTRACE(C,R,St), C:R:St ->). --else. % -ifdef(OTP_RELEASE). +-endif. +-endif. +-ifndef(STACKTRACE). -define(STACKTRACE(C,R,St), C:R -> St = erlang:get_stacktrace(),). --endif. % -ifdef(OTP_RELEASE). +-endif. %-compile(export_all). diff -Ndurp gpb-4.19.8/test/gpb_codemorpher_tests.erl gpb-4.19.8-stacktrace/test/gpb_codemorpher_tests.erl --- gpb-4.19.8/test/gpb_codemorpher_tests.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/test/gpb_codemorpher_tests.erl 2023-08-28 01:12:19.491539224 +0300 @@ -22,10 +22,13 @@ -include_lib("eunit/include/eunit.hrl"). -ifdef(OTP_RELEASE). +-if(?OTP_RELEASE >= 21). -define(STACKTRACE(C,R,St), C:R:St ->). --else. % -ifdef(OTP_RELEASE). +-endif. +-endif. +-ifndef(STACKTRACE). -define(STACKTRACE(C,R,St), C:R -> St = erlang:get_stacktrace(),). --endif. % -ifdef(OTP_RELEASE). +-endif. %% ------------------------------------------------------------------ diff -Ndurp gpb-4.19.8/test/gpb_compile_tests.erl gpb-4.19.8-stacktrace/test/gpb_compile_tests.erl --- gpb-4.19.8/test/gpb_compile_tests.erl 2023-08-06 21:24:50.000000000 +0300 +++ gpb-4.19.8-stacktrace/test/gpb_compile_tests.erl 2023-08-28 01:12:19.495539136 +0300 @@ -82,10 +82,13 @@ -ifdef(OTP_RELEASE). +-if(?OTP_RELEASE >= 21). -define(STACKTRACE(C,R,St), C:R:St ->). --else. % -ifdef(OTP_RELEASE). +-endif. +-endif. +-ifndef(STACKTRACE). -define(STACKTRACE(C,R,St), C:R -> St = erlang:get_stacktrace(),). --endif. % -ifdef(OTP_RELEASE). +-endif. %% Include a bunch of tests from gpb_tests. %% The shared tests are for stuff that must work both
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor