blob: 71ec170360d190e09d998b9c704c2b4d0765ab37 [file] [log] [blame]
/* This testcase is part of GDB, the GNU debugger.
Copyright 2017-2021 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#define ABI1 __attribute__ ((abi_tag ("tag1")))
#define ABI2 __attribute__ ((abi_tag ("tag2")))
#define ABI3 __attribute__ ((abi_tag ("tag3")))
void ABI1
test_abi_tag_function (int)
{
}
void ABI1
test_abi_tag_ovld_function ()
{
}
void ABI1
test_abi_tag_ovld_function (int)
{
}
/* Code for the overload functions, different ABI tag test. */
void
test_abi_tag_ovld2_function ()
{
}
void ABI1
test_abi_tag_ovld2_function (short)
{
}
void ABI2
test_abi_tag_ovld2_function (int)
{
}
void ABI2
test_abi_tag_ovld2_function (long)
{
}
struct ABI1 test_abi_tag_struct
{
ABI2 test_abi_tag_struct ();
ABI2 ~test_abi_tag_struct ();
};
test_abi_tag_struct::test_abi_tag_struct ()
{}
test_abi_tag_struct::~test_abi_tag_struct ()
{}
ABI3 test_abi_tag_struct s;
/* Code for the abi-tag in parameters test. */
struct ABI2 abi_tag_param_struct1
{};
struct ABI2 abi_tag_param_struct2
{};
void
test_abi_tag_in_params (abi_tag_param_struct1)
{}
void
test_abi_tag_in_params (abi_tag_param_struct1, abi_tag_param_struct2)
{}
int
main ()
{
return 0;
}