The Swiss have backed the government's drugs policy, including the prescription of heroin for hardcore addicts, but cannabis consumption will remain illegal.
In a major upset in Sunday's nationwide ballot, voters came out in favour of a proposal to tighten legal provisions against paedophile criminals, extending indefinitely the statute of limitations.
An early retirement scheme and plans to curb the powers of environmental groups were opposed by a clear majority.
Final results show 68 per cent of voters approved a plan by parliament to enshrine in law the government's four-pillar drugs policy.
The rightwing Swiss People's Party and a small ultra-conservative group had challenged the decision to a referendum and called for abstinence-based methods.
They argued the official policy, in force on a trial basis for ten years, has failed to reduce the number of addicts.
However, supporters, including many drugs experts, said the policy has helped reduce the number of drug-related deaths and allows addicts to live a more normal life.
Switzerland pioneered the four-pillar policy, based on prevention, harm reduction, therapy and repression, in response to open drugs scenes in Zurich and other Swiss cities in the 1990s.
There are about 1,300 registered heroin addicts who benefit from the heroin distribution programme under strict medical supervision.
The United States and the United Nations narcotics board have criticised the programme as potentially fuelling drug abuse, but more than 80 governments have started or are considering their own programmes based on the Swiss model.
A plan to decriminalise cannabis for personal consumption, which also came to the vote on Sunday, was rejected by 63 per cent of the electorate. It was the second vote on the issue in ten years.
Under the plan, the trade in and cultivation of hallucinogenic hemp would have been subject to state control.
The initiative, supported by centre-left and some centre-right politicians as well as drugs experts, was launched in the wake of parliament's refusal in 2004 to adapt legislation to widespread practice.
An estimated 500,000 people in Switzerland say they regularly or occasionally smoke dope.
In a major surprise, an initiative by a group of parents to extend indefinitely the statute of limitations for paedophile crimes won a majority at the polls.
Fifty-two per cent of voters and a majority of the country's 26 cantons came out in favour of the proposal, despite opposition by the government and most political parties. Only the People's Party backed the initiative group.
It is rare for a people's initiative to pass in a nationwide vote – only 16 out of 169 have been successful since 1891.
The supporters of the latest proposal said sexual abuse of minors is often underestimated by the public, while opponents argued the scrapping of the time limit will be difficult to implement and is disproportional.
Currently a person suspected of a paedophile crime can be prosecuted for up to 15 years after the crime, or until the victim turns 25.
Only genocide, war crimes and terrorist acts have no statute of limitations in Switzerland.
The trade unions failed in their bid to introduce a flexible retirement from age 62 and reform the state old age pension scheme.
A 59 per cent majority voted against a proposal to allow people who earn less than SFr120,000 ($99,700) annually to stop working with no loss of benefits.
The campaign in the run-up to the vote focused on the costs of the reform with opponents pointing out the risks of the pension system getting out of sync because of the ageing population.
Supporters, notably the centre-left Social Democrats and Greens, argued early retirement must no longer be the privilege of high-income earners.
At present men officially retire at 65, while women are eligible for a pension at 64 in Switzerland.
Finally, voters on Sunday also rejected a plan by the centre-right Radical Party to curb the powers of environmental groups in major building projects.
The initiative pitted the interests of business against those of environmentalists in the wake of a legal battle over the construction of a football stadium in Zurich.
swissinfo, Urs Geiser
Drugs policy, including heroin prescription: 68% yes, 32% no.
Decriminalise cannabis: 37% yes, 63% no.
Statute of limitations for paedophile crimes: 52% yes, 48% no.
Flexible retirement age: 41% yes, 59% no.
Powers of environmental groups: 34% yes, 66% no.
Turnout was 46%.
As a rule nationwide votes take place four times a year.
About 4.9 million Swiss were eligible to vote on Sunday, including some 120,000 registered Swiss expatriates.
Trials took place with online voting in three cantons, including Geneva and Zurich.
The next nationwide ballot is scheduled for February 2009 when voters will decide on the continuation and extension of a key labour accord with the EU.
Cantonal and local ballots
Votes and elections also took place in many of the country's 26 cantons and on a local level this weekend.
The cantonal ballots included plans for the nationwide coordination of the education system for compulsory schooling, as well as state funding for private schools.
Other issues were smoking restrictions in public and a ban on dangerous dogs.
The electorate in the capital Bern chose a new local parliament and the five-member local council, including the mayor.