Emit dummy statements for probes.d probes when disabled
authorPeter Eisentraut
Mon, 10 May 2021 09:36:26 +0000 (11:36 +0200)
committerPeter Eisentraut
Mon, 10 May 2021 09:40:03 +0000 (11:40 +0200)
When building without --enable-dtrace, emit dummy

    do {} while (0)

statements for the stubbed-out TRACE_POSTGRESQL_foo() macros
instead of empty macros that totally elide the original probe
statement.

This fixes the

    warning: suggest braces around empty body in an ‘if’ statement [-Wempty-body]

introduced by b94409a02f.

Author: Craig Ringer 
Discussion: https://www.postgresql.org/message-id/flat/20210504221531.cfvpmmdfsou6eitb%40alap3.anarazel.de

src/backend/utils/Gen_dummy_probes.pl
src/backend/utils/Gen_dummy_probes.sed

index 9f3cf6baf18c81c3344dc1c90d474b234941fdf5..4852103daf4b4d61e71316ef3b6d4a4c6544f435 100644 (file)
@@ -135,6 +135,12 @@ sub Run()
            $CondReg ||= $s;
        }
 
+       # s/$/ do {} while (0)/
+       {
+           $s = s /$/ do {} while (0)/s;
+           $CondReg ||= $s;
+       }
+
        # P
        {
            if (/^(.*)/) { print $1, "\n"; }
index aa3db59cce7c283c370fcd6e4be4895580b37911..6e29d86afaf68b54c515e8bd35760871602f4b33 100644 (file)
@@ -19,5 +19,6 @@ s/([^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\})/(INT1, INT2,
 s/([^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\})/(INT1, INT2, INT3, INT4, INT5, INT6)/
 s/([^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\})/(INT1, INT2, INT3, INT4, INT5, INT6, INT7)/
 s/([^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\}, [^,)]\{1,\})/(INT1, INT2, INT3, INT4, INT5, INT6, INT7, INT8)/
+s/$/ do {} while (0)/
 P
 s/(.*$/_ENABLED() (0)/