This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Re: [PATCH 1/2] rewrite the case typemismatch
- From: David Smith <dsmith at redhat dot com>
- To: Zhou, Wenjian/åæå <zhouwj-fnst at cn dot fujitsu dot com>
- Cc: systemtap at sourceware dot org
- Date: Tue, 1 Dec 2015 10:33:39 -0600
- Subject: Re: [PATCH 1/2] rewrite the case typemismatch
- Authentication-results: sourceware.org; auth=none
- References: <1448935063-2946-1-git-send-email-zhouwj-fnst at cn dot fujitsu dot com> <565D10BB dot 8000103 at cn dot fujitsu dot com>
On 11/30/2015 09:15 PM, "Zhou, Wenjian/åæå" wrote:
> Hello David,
>
> I will describe the bug in typemismatch in the following.
>
> On 12/01/2015 09:57 AM, Zhou Wenjian wrote:
>> * testsuite/semko/typemismatch.stp: use the following cases to
>> replace it
>>
>> * testsuite/semko/typemismatch1.stp
>> * testsuite/semko/typemismatch2.stp
>> * testsuite/semko/typemismatch3.stp
>> ---
>> testsuite/semko/typemismatch.stp | 8 --------
>> testsuite/semko/typemismatch1.stp | 8 ++++++++
>> testsuite/semko/typemismatch2.stp | 4 ++++
>> testsuite/semko/typemismatch3.stp | 3 +++
>> 4 files changed, 15 insertions(+), 8 deletions(-)
>> delete mode 100755 testsuite/semko/typemismatch.stp
>> create mode 100755 testsuite/semko/typemismatch1.stp
>> create mode 100755 testsuite/semko/typemismatch2.stp
>> create mode 100755 testsuite/semko/typemismatch3.stp
>>
>> diff --git a/testsuite/semko/typemismatch.stp
>> b/testsuite/semko/typemismatch.stp
>> deleted file mode 100755
>> index 94a49d5..0000000
>> --- a/testsuite/semko/typemismatch.stp
>> +++ /dev/null
>> @@ -1,8 +0,0 @@
>> -#! stap -p2
>> -
>> -
>> -global noo
>> -
>> -probe begin { foo = 1 ; foo = "bar" ; noo = 4 }
>> -
>> -probe end { foo = "zoo" ; foo <<< 2 ; noo = "zoo" }
>
> The 'foo = 1; foo = "bar";' and 'foo = "zoo" ; foo <<< 2;' will just
> cause some warnings,
> and won't cause error.
Hmm, if you are only seeing warnings there and not an error, something
is wrong. Here's what I get:
====
# stap -p2 testsuite/semko/typemismatch.stp
WARNING: Eliding assignment to 'foo': operator '=' at
testsuite/semko/typemismatch.stp:6:19
source: probe begin { foo = 1 ; foo = "bar" ; noo = 4 }
^
WARNING: Eliding side-effect-free expression : identifier 'foo' at :6:15
source: probe begin { foo = 1 ; foo = "bar" ; noo = 4 }
^
semantic error: type mismatch (string): identifier 'noo' at :8:39
source: probe end { foo = "zoo" ; foo <<< 2 ; noo = "zoo" }
^
semantic error: type was first inferred here (long): identifier 'noo' at
:6:39
source: probe begin { foo = 1 ; foo = "bar" ; noo = 4 }
^
Pass 2: analysis failed. [man error::pass2]
Number of similar warning messages suppressed: 6.
Rerun with -v to see them.
[root@intel-wildcatpass-03 src]# echo $?
1
====
Do you not get those 2 semantic errors?
--
David Smith
dsmith@redhat.com
Red Hat
http://www.redhat.com
256.217.0141 (direct)
256.837.0057 (fax)