Bug 757129

Summary: systemtap.base/sdt.exp: compiling sdt.c c89 -pedantic uprobe PASS -> FAIL
Product: Red Hat Enterprise Linux 5 Reporter: Petr Muller <pmuller>
Component: systemtapAssignee: Frank Ch. Eigler <fche>
Status: CLOSED WONTFIX QA Contact: qe-baseos-tools-bugs
Severity: medium Docs Contact:
Priority: medium    
Version: 5.8CC: mjw, ohudlick, scox
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-11-25 14:55:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 754028    

Description Petr Muller 2011-11-25 14:34:33 UTC
Description of problem: For systemtap.base/sdt.exp, I see this in the testsuite logs:

-PASS: compiling sdt.c c89 -pedantic uprobe
-PASS: sdt c89 -pedantic uprobe
+FAIL: compiling sdt.c c89 -pedantic uprobe
+UNTESTED: sdt c89 -pedantic uprobe

I copied out sdt.c from the new (1.6-4.el5) systemtap-testsuite, so I can compare the result on the identical testcase\.

The command:
# gcc sdt.c  -g -isystem/usr/share/systemtap/testsuite -isystem/usr/include -Wall -Wextra -Werror -std=c89 -pedantic  -lm   -o sdt.c.exe.2 && echo PASS || echo FAIL;

old systemtap (1.3-9.el5):
PASS

new systemtap (1.6-4.el5)
sdt.c:10:1: error: use of C99 long long integer constant
(lot of the same error messages, on various lines)
sdt.c:55:1: error: use of C99 long long integer constant
FAIL

Additionally on ppc, I see more errors like:
sdt.c: In function ‘call9’:
sdt.c:50: warning: string length ‘542’ is greater than the length ‘509’ ISO C89 compilers are required to support

Version-Release number of selected component (if applicable):
systemtap-1.6-4.el5

How reproducible:
always, with more errors on ppc

Steps to Reproduce:
1. see above
  
Actual results:
error: use of C99 long long integer constant

Expected results:
compiles

Additional info:
As this works for the identical output for old stap, this is a regression and should be fixed in 5.8

Comment 1 Frank Ch. Eigler 2011-11-25 14:49:43 UTC
This particular combination of gcc flags (-std=c89 -pedantic) and the 
reimplementation of sys/sdt.h in this version is known to stress the
old rhel5 compiler.  If this error comes up with an actual customer
test case, we can advise workarounds (such as using the previous version
of systemtap-sdt-devel rpm).  It is not straightforwardly fixable without
compiler changes.

Comment 3 RHEL Program Management 2011-11-25 14:55:19 UTC
Development Management has reviewed and declined this request.  You may appeal
this decision by reopening this request.